Heim >Backend-Entwicklung >C++ >Wie konvertiere ich einen „yyyyMMddHHmmss'-String in ein DateTime-Objekt in C#?

Wie konvertiere ich einen „yyyyMMddHHmmss'-String in ein DateTime-Objekt in C#?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-30 06:46:101014Durchsuche

How to Convert a

String in DateTime in C# konvertieren

Das Konvertieren eines String-Datums in ein DateTime-Objekt in C# kann eine herausfordernde Aufgabe sein, insbesondere wenn es darum geht nicht standardmäßige Formate. Ein solches Format ist „yyyyMMddHHmmss“, das ein Datum ohne Trennzeichen darstellt.

Problem:

Betrachten Sie die folgende Zeichenfolge als Datum:

20090530123001

Diese Zeichenfolge wurde mit dateTime.ToString("yyyyMMddHHmmss", CultureInfo.InvariantCulture). Wie können wir es wieder in ein richtiges DateTime-Objekt umwandeln?

Lösung:

Der einfachste Ansatz ist die Verwendung der DateTime.ParseExact-Methode. Diese Methode benötigt drei Parameter:

  • Die zu konvertierende Zeichenfolge
  • Das Format der Zeichenfolge
  • Die Kulturinformationen (optional)

Für die angegebene Zeichenfolge können wir den folgenden Code verwenden:

DateTime dateTime = DateTime.ParseExact("20090530123001", "yyyyMMddHHmmss", CultureInfo.InvariantCulture);

Dadurch wird die Zeichenfolge erfolgreich in eine DateTime konvertiert Objekt.

Umgang mit ungültigen Formaten:

Wenn die Zeichenfolge jedoch möglicherweise nicht immer im richtigen Format vorliegt, kann die Verwendung von ParseExact zu einer FormatException führen. Um dies zu vermeiden, können Sie stattdessen die Methode DateTime.TryParseExact verwenden. Diese Methode verwendet dieselben Parameter wie ParseExact, gibt jedoch einen booleschen Wert zurück, der angibt, ob die Konvertierung erfolgreich war.

Der folgende Code zeigt, wie TryParseExact verwendet wird:

DateTime dateTime;
if (DateTime.TryParseExact("20090530123001", "yyyyMMddHHmmss", CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime))
{
    // Conversion successful
}
else
{
    // Conversion failed
}

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen „yyyyMMddHHmmss'-String in ein DateTime-Objekt in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn