How do I get today's date in C# in mm/dd/yyyy format?

108

How do I get today's date in C# in mm/dd/yyyy format?

I need to set a string variable to today's date (preferably without the year), but there's got to be a better way than building it month-/-day one piece at a time.

BTW: I'm in the US so M/dd would be correct, e.g. September 11th is 9/11.

Note: an answer from kronoz came in that discussed internationalization, and I thought it was awesome enough to mention since I can't make it an 'accepted' answer as well.

kronoz's answer

This question is tagged with c# date

~ Asked on 2008-08-28 16:37:10

8 Answers


206

DateTime.Now.ToString("M/d/yyyy");

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

~ Answered on 2008-08-28 16:37:44


23

Not to be horribly pedantic, but if you are internationalising the code it might be more useful to have the facility to get the short date for a given culture, e.g.:-

using System.Globalization;
using System.Threading;

...

var currentCulture = Thread.CurrentThread.CurrentCulture;
try {
  Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-us");
  string shortDateString = DateTime.Now.ToShortDateString();
  // Do something with shortDateString...
} finally {
  Thread.CurrentThread.CurrentCulture = currentCulture;
}

Though clearly the "m/dd/yyyy" approach is considerably neater!!

~ Answered on 2008-08-28 17:05:48


13

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

~ Answered on 2008-08-28 16:38:49


9

If you want it without the year:

DateTime.Now.ToString("MM/DD");

DateTime.ToString() has a lot of cool format strings:

http://msdn.microsoft.com/en-us/library/aa326721.aspx

~ Answered on 2008-08-28 16:41:40


8

DateTime.Now.Date.ToShortDateString()

is culture specific.

It is best to stick with:

DateTime.Now.ToString("d/MM/yyyy");

~ Answered on 2008-08-28 16:41:25


8

string today = DateTime.Today.ToString("M/d");

~ Answered on 2008-08-28 16:42:07


5

DateTime.Now.Date.ToShortDateString()

I think this is what you are looking for

~ Answered on 2008-08-28 16:39:21


3

Or without the year:

DateTime.Now.ToString("M/dd")

~ Answered on 2008-08-28 16:41:29


Most Viewed Questions: