2016-05-02 8 views
-2

Ich habe eine Zeichenfolge in Tabelle "13/12/1985 12:00:00 a.m." gespeichert, wenn ich versuchte, dies zu Datetime zu konvertieren, erhalte ich eine Ausnahme sagen "String ist kein gültiges DateTime-Format". Es ist, weil der erste Teil der string(13) Monat ist. Gibt es eine Möglichkeit, die obige Zeichenfolge in (mm/dd/yyyy hh:mm:ss am/pm) Format zu konvertieren ?. Tatsächlich hat die in der Tabelle gespeicherte Zeichenfolge das Format "TT/MM/JJJJ". Ich möchte "mm/tt /" in DatetimeMüssen String in DateTime-Format in C# konvertiert werden

+0

Noch eine Frage konvertieren: warum Sie einen 'DateTime' als' string' speichern Sie in deinem Tisch? Sie würden diese Ausnahme und andere Probleme vermeiden, wenn Sie sie so speichern würden, wie sie sind. –

+1

@DHN, dieser Link ist für 'python', aber diese Frage ist für' C# '. Ich bin sicher, es gibt Antworten für C# obwohl –

+0

@TimSchmelter, dass eine vorhandene Tabelle ist. Und diese Tabelle hat eine separate Spalte zum Speichern von Datentypen. Sagen Sie DateTime als 'D'. Wenn es D ist, muss ich in datetime konvertieren – user3403111

Antwort

1

Versuchen Sie dieses, seine convert dd/MM/yyyy hh:mm:ss tt Format Datetime MM/dd/yyyy hh:mm:ss tt Format

DateTime dt = DateTime.ParseExact("26/04/2016 12:00:00 PM", "dd/MM/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture); 
string newdate = dt.ToString("MM/dd/yyyy hh:mm:ss tt") 
+0

Ich möchte mm/TT/JJJJ-Format – user3403111

+0

Und haben Sie versucht, dieses Format zu verwenden? Bitte beachten Sie, dass "mm" Minuten und "MM" Monate bedeutet. –

+0

@ user3403111 in C# 'MM' ist Monat und 'mm' ist Minute, also denke ich, willst du Monat richtig? – Mostafiz