Hvordan konverterer du en streng som f.eks. 2009-05-08 14:40:52,531
til en DateTime
?
Du har grundlæggende to muligheder for dette. DateTime.Parse()
og DateTime.ParseExact()
.
Den første er meget tilgivende med hensyn til syntaks og kan analysere datoer i mange forskellige formater. Den er god til brugerinput, som kan komme i forskellige formater.
ParseExact giver dig mulighed for at angive det nøjagtige format af din datastreng, der skal bruges til parsing. Det er godt at bruge dette, hvis din streng altid er i samme format. På denne måde kan du nemt opdage eventuelle afvigelser fra de forventede data.
Du kan analysere brugerinput på denne måde:
DateTime enteredDate = DateTime.Parse(enteredString);
Hvis du har et specifikt format for strengen, skal du bruge den anden metode:
DateTime loadedDate = DateTime.ParseExact(loadedString, "d", null);
"d"
står for det korte datomønster (se MSDN for mere information) og null
angiver at den aktuelle kultur skal bruges til at analysere strengen.