Шаблоны форматирования времени и даты

Шаблоны форматирования времени и даты осуществляют контроль за отображением значений Времени и Даты (т.е. преобразование метки времени в строку). В строках шаблонов времени и даты не заключённые в кавычки буквы от 'A' до 'Z' и от 'a' до 'z' интерпретируются как буквы шаблона, представляющие компоненты строки даты или времени. Текст можно цитировать, используя кавычки ('), чтобы избежать интерпретации. "''" представляет одну цитату. Все остальные символы не интерпретируются, они просто копируются в строку вывода во время форматирования или соотносятся со строкой ввода во время синтаксического анализа.

Определены следующие буквы шаблона (все остальные символы от 'A' до 'Z' и от 'a' до 'z' зарезервированы):

Буква

Компонент даты или времени

Представление

Примеры

G

Указатель летоисчисления

Текст

AD

y

Год

Год

1996; 96

Y

Недельный год

Год

2009; 09

M

Месяц в году

Месяц

July; Jul; 07

w

Неделя в году

Число

27

W

Неделя в месяце

Число

2

D

День в году

Число

189

d

День в месяце

Число

10

F

День недели в месяце

Число

2

E

День в неделе

Текст

Tuesday; Tue

u

Номер для недели (1 = понедельник, ..., 7 = воскресенье)

Number

1

a

Метка AM/PM

Текст

PM

H

Час дня (0-23)

Число

0

k

Час дня

Число

24

K

Часы в AM/PM (0-11)

Число

0

h

Часы в AM/PM (1-12)

Число

12

m

Минута часа

Число

30

s

Секунда минуты

Число

55

S

Миллисекунды

Число

978

z

Часовой пояс

Общий часовой пояс

Pacific Standard Time; PST; GMT-08:00

Z

Часовой пояс

RFC 822 часовой пояс

-0800

X

Часовой пояс

ISO 8601 часовой пояс

-08; -0800; -08:00

Буквы шаблона обычно повторяются, поскольку их количество определяет точность представления:

  • Текст: для форматирования, если число букв шаблона 4 или более, используется полная форма; в ином случае используется краткая форма или аббревиатура, если она есть. Для синтаксического анализа приемлемы обе формы, независимые от количества букв шаблона.
  • Число: для форматирования число букв шаблона - минимальное количество цифр, а более короткие числа добавляются нулями к этому количеству.  При синтаксическом анализе количество букв шаблона игнорируется, если только не требуется разделить два соседних поля.
  • Год: для форматирования, если число букв шаблона равно 2, год усекается до 2 цифр; в ином случае год интерпретируется как число.
  • Месяц: если число букв шаблона 3 и более, месяц интерпретируется как текст; в ином случае месяц интерпретируется как число.

Часы должны соответствовать диапазону от 0 до 23, а минуты - от 00 до 59. Формат - независим от языка, и цифры следует брать из Основного Латинского Блока юникода.

Примеры

Следующие примеры показывают, как шаблоны даты и времени интерпретируются согласно американской языковой настройке. Данная дата и время - 2001-07-04 12:08:56 местное время часового пояса тихоокеанской части США.

Шаблоны даты и времени

Результат

"yyyy.MM.dd G 'at' HH:mm:ss"

2001.07.04 AD at 12:08:56

"EEE, MMM d, ''yy"        

Wed, Jul 4, '01

"h:mm a"

12:08 PM

"hh 'o''clock' a"

12 o'clock PM

"K:mm a"

0:08 PM

"yyyyy.MMMMM.dd GGG hh:mm aaa"

02001.July.04 AD 12:08 PM

"EEE, d MMM yyyy HH:mm:ss"

Wed, 4 Jul 2001 12:08:56

"yyMMddHHmmss"        

010704120856