Looks like your DateSeparator
of your CurrentCulture
is -
and that's why /
character replace itself to it.
"/"
custom format specifier has a special meaning as replace me with current culture or supplied culture date separator.
You have a few options, you either escape it with single quotes (or \/
in a verbatim string literal) or use a culture that has /
as a DateSeparator
like InvariantCulture
.
string s = DateTime.Now.ToString("M'/'d'/'yyyy");
string s = DateTime.Now.ToString(@"M\/d\/yyyy");
string s = DateTime.Now.ToString("M/d/yyyy", CultureInfo.InvariantCulture);