DateTime.Now.ToString ("JJJJ-MM-TT HH: MM: SS") gibt AM-Zeit anstelle von PM-Zeit zurück?


75

Ich versuche die aktuelle Zeit über zu bekommen DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")

Dies spuckt jedoch eine Zeit von 12 Stunden aus, was wir wollen.

Zum Beispiel:

Was es ausspuckt: 11/14/2011 2:24:56 am

Was wir wollen: 11/14/2011 2:24:56 pm

Welchen Noob-Fehler machen wir?

Jede Hilfe wird sehr geschätzt :)


2
Wo wird der am / pm-Marker hinzugefügt, da er nicht in Ihrer Formatierungszeichenfolge enthalten ist, z. B. 'tt'?
Shaun Wilde

7
Aus irgendeinem Grund unterscheidet sich das, was Sie sagen, dass die Formatzeichenfolge produziert ( 11/14/2011 2:24:56 am), sehr von dem, was ich von der Formatzeichenfolge erwarten würde, die Sie gepostet haben ( yyyy-MM-dd hh:mm:ss). Bist du dir da sicher?
Oded

Antworten:



5

Mit C # 6.0 haben Sie auch eine neue Möglichkeit, das Datum zu formatieren, wenn Sie die Zeichenfolgeninterpolation verwenden, z

$"{DateTime.Now:yyyy-MM-dd HH:mm:ss}"

Ich kann nicht sagen, dass es besser ist, aber es ist etwas sauberer, wenn die formatierte DateTime in eine längere Zeichenfolge eingefügt wird.

Weitere Informationen zur String-Interpolation.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.