tags:

views:

117

answers:

3

When i write a date in C# by using

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

then it returns 2010-09-10, but I need 2010/09/10. How do I make it output slashes?

+4  A: 

Specify a culture. Your current culture uses - for the separators, and that's what ToString defaults to (your current culture), unless you override it.

You can try this:

DateTime.Now.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture)

but perhaps it would be better if you specified a different culture, for instance if you want the US culture:

DateTime.Now.ToString("yyyy/MM/dd", CultureInfo.GetCultureInfo("en-US"))

Both of the above will give you / as a separator.

Lasse V. Karlsen
thanks for help !
steven spielberg
+2  A: 

Another way is to specify the slashes as character literals:

DateTime.Now.ToString("yyyy'/'MM'/'dd");
"2010/09/10"
Stuart Dunkeld
+9  A: 

Use

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

/ - the date separator. It will be replaced according current culture. So you need enclose it with literal string delimiter (') to use it like char.

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

Andrey
+1: Didn't know that you could override it like that!
Lasse V. Karlsen