DateTime Quicky

Written on December 04, 2003

Gestern tauchte in der ASP.NET-Mailingliste ein interessantes Problem auf:
Verwendet man einen englischsprachigen Webserver oder hat die Culture z.B. auf "en" gesetzt und möchte per

Response.Write(DateTime.Now.ToString());

das Datum ausgeben, so fehlt u.U. die führende Null vor dem Tag bzw. dem Monat.
Auch ein .ToShortDateString() bringt keine Änderung.

Der Trick ist, dem String ein neues Pattern für die Ausgabe zu verpassen:

Response.Write(DateTime.Now.ToString("MM/dd/yyyy"));

Benötigt man diese Einstellung häufiger, kann man auch das Pattern für .ToShortDateString() überschreiben:

using System.Globalization;
System.Globalization.DateTimeFormatInfo.CurrentInfo.ShortDatePattern="MM/dd/yyyy";

Wichtig ist, daß das Pattern case-sensitive ist, d.h. MM liefert den Monat, wohingegen mm die Minuten liefert.