format date in c#

It’s almost the same, simply use the DateTime.ToString() method, e.g:

DateTime.Now.ToString("dd/MM/yy");

Or:

DateTime dt = GetDate(); // GetDate() returns some date
dt.ToString("dd/MM/yy");

In addition, you might want to consider using one of the predefined date/time formats, e.g:

DateTime.Now.ToString("g");
// returns "02/01/2009 9:07 PM" for en-US
// or "01.02.2009 21:07" for de-CH 

These ensure that the format will be correct, independent of the current locale settings.

Check the following MSDN pages for more information


Some additional, related information:

If you want to display a date in a specific locale / culture, then there is an overload of the ToString() method that takes an IFormatProvider:

DateTime dt = GetDate();
dt.ToString("g", new CultureInfo("en-US")); // returns "5/26/2009 10:39 PM"
dt.ToString("g", new CultureInfo("de-CH")); // returns "26.05.2009 22:39"

Or alternatively, you can set the CultureInfo of the current thread prior to formatting a date:

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
dt.ToString("g"); // returns "5/26/2009 10:39 PM"

Thread.CurrentThread.CurrentCulture = new CultureInfo("de-CH");
dt.ToString("g"); // returns "26.05.2009 22:39"

Leave a Comment