C # DateTime.ToString с форматом данных или шаблоном - PullRequest
1 голос
/ 18 декабря 2009

Я пытаюсь понять, как DateTime.ToString (шаблон даты) работает в .net Framework, C #.

Я изменил свой компьютер, чтобы иметь короткий формат даты, как этот yyyy.MM.dd. Вот что я замечаю

DateTime myDate = DateTime.Now;

myDate.ToString("yyyy/MM/dd") всегда возвращать в формате гггг.ММ.Дд не гггг / ММ / дд
и
myDate.ToString("yyyy-MM-dd") возвращает строку в формате гггг-ММ-дд

чтобы он вернул то, что я искал, это то, что мне нужно сделать myDate.ToString("yyyy'/'MM'/'dd") ===> гггг / мм / дд

Может кто-нибудь объяснить мне, почему он это делает? и есть ли другой способ достичь того же результата?

спасибо ....

Ответы [ 3 ]

4 голосов
/ 18 декабря 2009

/ считается спецификатором формата и заменяется аналогично гггг .

Прочитать информацию о спецификаторах формата :

/ = Определен разделитель даты по умолчанию в DateSeparator.

0 голосов
/ 05 декабря 2016

Вы также можете экранировать один символ, используя обратную косую черту:

DateTime myDate = DateTime.Now;
myDate.ToString("yyyy\\/MM\\/dd");
// or
myDate.ToString(@"yyyy\/MM\/dd");
0 голосов
/ 18 декабря 2009

Вы получаете поведение, которое видите, потому что "/" является спецификатором формата .

Если вы посмотрите справку о пользовательских настройках формата даты , вы увидите, что "/" переводится как разделитель даты для вашей культуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...