Как использовать пользовательский формат DateTime - PullRequest
0 голосов
/ 08 июля 2011

Проблема заключается в том, что спецификатор d представляет одновременно «Шаблон короткой даты» в строках формата Standard DateTime и «день месяца в виде числа от 1 до 31» в строках формата пользовательских дат. Последнее - то, что мне действительно нужно.

Но если я использую что-то вроде

String.Format("{0:d}", dt);  

У меня короткая дата (например, "3/9/2008").

Итак, как мне использовать d, чтобы получить только день месяца (например, "3")?

Заранее спасибо.

Ответы [ 6 ]

1 голос
/ 08 июля 2011

dt.Day дает день (конечно, если dt - Datetime)

проверка MSDN DateTime.Day

1 голос
/ 08 июля 2011

Поставьте % перед d, то есть

String.Format("{0:%d}", dt);

... но я бы написал

dt.ToString("%d");

(см. здесь , я думаювам просто нужно было прокрутить еще немного)

1 голос
/ 08 июля 2011

Использовать DateTime.Now.ToString ("% d");

Или "dd", если вам нравятся ведущие нули.

1 голос
/ 08 июля 2011

Я думаю, что это самое простое решение:

dateTime.Day.ToString()
0 голосов
/ 08 июля 2011

Вот хороший ресурс для пользовательских шаблонов даты и времени:

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

0 голосов
/ 08 июля 2011

Используйте что-то вроде этого

String.Foramt("{0}", dt.ToString("dd").TrimStart('0'));

Я проверяю это. Это работает.

- Правка -

Хотя есть и лучшие способы.

...