Konvertering af en streng til DateTime

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.

Kommentarer (0)

prøv dette

DateTime myDate = DateTime.Parse(dateString);

en bedre måde ville være denne:

DateTime myDate;
if (!DateTime.TryParse(dateString, out myDate))
{
    // handle parse failure
}
Kommentarer (0)