Форматирование дат и времени

Последнее обновление: 06.01.2022

Для форматирования вывода дат и времени применяется ряд строковых форматов:

Описатель

Описание

D

Полный формат даты. Например, 17 июля 2015 г.

d

Краткий формат даты. Например, 17.07.2015

F

Полный формат даты и времени. Например, 17 июля 2015 г. 17:04:43

f

Полный формат даты и краткий формат времени. Например, 17 июля 2015 г. 17:04

G

Краткий формат даты и полный формат времени. Например, 17.07.2015 17:04:43

g

Краткий формат даты и времени. Например, 17.07.2015 17:04

M, m

Формат дней месяца. Например, 17 июля

O, o

Формат обратного преобразования даты и времени. Вывод даты и времени в соответствии со стандартом ISO 8601 в формате "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzz". Например, 2015-07-17T17:04:43.4092892+03:00

R, r

Время по Гринвичу. Например, Fri, 17 Jul 2015 17:04:43 GMT

s

Сортируемый формат даты и времени. Например, 2015-07-17T17:04:43

T

Полный формат времени. Например, 17:04:43

t

Краткий формат времени. Например, 17:04

U

Полный универсальный полный формат даты и времени. Например, 17 июля 2015 г. 17:04:43

u

Краткий универсальный полный формат даты и времени. Например, 2015-07-17 17:04:43Z

Y, y

Формат года. Например, Июль 2015

Выведем текущею дату и время во всех форматах:

DateTime now = DateTime.Now;

Console.WriteLine($"D: {now.ToString("D")}");
Console.WriteLine($"d: {now.ToString("d")}");
Console.WriteLine($"F: {now.ToString("F")}");
Console.WriteLine($"f: {now:f}");
Console.WriteLine($"G: {now:G}");
Console.WriteLine($"g: {now:g}");
Console.WriteLine($"M: {now:M}");
Console.WriteLine($"O: {now:O}");
Console.WriteLine($"o: {now:o}");
Console.WriteLine($"R: {now:R}");
Console.WriteLine($"s: {now:s}");
Console.WriteLine($"T: {now:T}");
Console.WriteLine($"t: {now:t}");
Console.WriteLine($"U: {now:U}");
Console.WriteLine($"u: {now:u}");
Console.WriteLine($"Y: {now:Y}");

Консольный вывод:

D: 6 января 2022 г.
d: 06.01.2022
F: 6 января 2022 г. 14:45:20
f: 6 января 2022 г. 14:45
G: 06.01.2022 14:45:20
g: 06.01.2022 14:45
M: 6 января
O: 2022-01-06T14:45:20.3942344+04:00
o: 2022-01-06T14:45:20.3942344+04:00
R: Thu, 06 Jan 2022 14:45:20 GMT
s: 2022-01-06T14:45:20
T: 14:45:20
t: 14:45
U: 6 января 2022 г. 10:45:20
u: 2022-01-06 14:45:20Z
Y: январь 2022 г.

Настройка формата времени и даты

Не всегда удобно использование встроенных форматов даты и времени. Иногда бывает необходимо задать сообственную форму отображения объекта DateTime. В этом случае мы можем составить свой формат из описателей:

Описатель

Описание

d

Представляет день месяца от 1 до 31. Одноразрядные числа используются без нуля в начале

dd

Представляет день месяца от 1 до 31. К одноразрядным числам в начале добавляется ноль

ddd

Сокращенное название дня недели

dddd

Полное название дня недели

f / fffffff

Представляет миллисекунды. Количество символов f указывает на число разрядов в миллисекундах

g

Представляет период или эру (например, "н. э.")

h

Часы в виде от 1 до 12. Часы с одной цифрой не дополняются нулем

hh

Часы в виде от 01 до 12. Часы с одной цифрой дополняются нулем

H

Часы в виде от 0 до 23. Часы с одной цифрой не дополняются нулем

HH

Часы в виде от 0 до 23. Часы с одной цифрой дополняются нулем

K

Часовой пояс

m

Минуты от 0 до 59. Минуты с одной цифрой не дополняются начальным нулем

mm

Минуты от 0 до 59. Минуты с одной цифрой дополняются начальным нулем

M

Месяц в виде от 1 до 12

MM

Месяц в виде от 1 до 12. Месяц с одной цифрой дополняется начальным нулем

MMM

Сокращенное название месяца

MMMM

Полное название месяца

s

Секунды в виде числа от 0 до 59. Секунды с одной цифрой не дополняются начальным нулем

ss

Секунды в виде числа от 0 до 59. Секунды с одной цифрой дополняются начальным нулем

t

Первые символы в обозначениях AM и PM

tt

AM или PM

y

Представляет год как число из одной или двух цифр. Если год имеет более двух цифр, то в результате отображаются только две младшие цифры

yy

Представляет год как число из одной или двух цифр. Если год имеет более двух цифр, то в результате отображаются только две младшие цифры. Если год имеет одну цифру, то он дополняется начальным нулем

yyy

Год из трех цифр

yyyy

Год из четырех цифр

yyyyy

Год из пяти цифр. Если в году меньше пяти цифр, то он дополняется начальными нулями

z

Представляет смещение в часах относительно времени UTC

zz

Представляет смещение в часах относительно времени UTC. Если смещение представляет одну цифру, то она дополняется начальным нулем.

Создадим пару своих форматов:

DateTime now = DateTime.Now;
Console.WriteLine(now.ToString("hh:mm:ss"));
Console.WriteLine(now.ToString("dd.MM.yyyy"));

Консольный вывод:

02:46:38
06.01.2022
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850