Reputation: 49289
If I do this in C#:
Console.WriteLine(DateTime.Now.ToString("ddd M/dd/yy"));
I would expect output like this:
Wed 6/15/11
But it actually outputs this:
Wed 6 15 11
Why are the slashes disappearing? Is there a way to prevent this and have the date outputted in the expected format?
Upvotes: 65
Views: 40482
Reputation: 411
The default behavior of the "/" (slash) in a format argument is to use the current's culture date separator.
To force the "/" (slash), you must precede it with a "\" (backslash).
Ex.: "yyyy\\/MM\\/dd" will always display a date like "2015/07/02" independent of the current culture in use.
Upvotes: 41
Reputation: 4291
You could also use
Console.WriteLine(dateTime.ToString("ddd M'/'dd'/'yy"));
That's a possible solution if you're not using the invariant culture as mentioned in other answers here.
Upvotes: 33
Reputation: 4285
Console.WriteLine(DateTime.Now.ToString("ddd M/dd/yy", CultureInfo.InvariantCulture));
Console.ReadLine();
try the above
Upvotes: 104