Date and time formats
Date and time formats are specified using date and time pattern strings. Within date and
time pattern strings, unquoted letters from A to Z and from a to z are interpreted as pattern
letters. They represent the components of a date or time string. The text to include in the
output should be quoted using single quotes ('
).
This table shows the pattern letters and how they are used:
Letter | Date or time component | Presentation | Examples |
---|---|---|---|
G | Era designator | Text |
AD
|
y
|
Year | Year |
1996 ;
96
|
Y
|
Week year | Year |
2009 ;
09
|
M
|
Month in year | Month |
July ;
Jul ; 07
|
w
|
Week in year | Number |
27
|
W
|
Week in month | Number |
2
|
D
|
Day in year | Number |
189
|
d
|
Day in month | Number |
10
|
F
|
Day of week in month | Number |
2
|
E
|
Day name in week | Text |
Tuesday ;
Tue
|
u
|
Day number of week (1 = Monday, ..., 7 = Sunday) | Text |
1
|
a
|
AM/PM marker | Text |
PM
|
H
|
Hour in day (0-23) | Number |
0
|
k
|
Hour in day (1-24) | Number |
24
|
K
|
Hour in AM/PM (0-11) | Number |
0
|
h
|
Hour in AM/PM (1-12) | Number |
12
|
m
|
Minute in hour | Number |
30
|
s
|
Second in minute | Number |
55
|
S
|
Millisecond | Number |
978
|
z
|
Time zone | General time zone |
Pacific
Standard Time ; PST ; GMT-08:00
|
Z
|
Time zone | RFC 822 time zone |
-0800
|
X
|
Time zone | ISO 8601 time zone |
-08 ;
-0800 ; -08:00
|
Pattern letters
The number of pattern letters determines the exact presentation.
- Text: If the number of pattern letters is 4 or more, the full form is used. Otherwise, a short or abbreviated form is used if available.
- Number: The number of pattern letters is the minimum number of digits, and shorter numbers are zero-padded to this amount.
- Year: If the number of pattern letters is 2, the year is truncated to 2 digits. Otherwise it is interpreted as a number.
- Month: If the number of pattern letters is 3 or more, the month is interpreted as text. Otherwise, it is interpreted as a number.
- General time zone: Time zones are interpreted as text if they have names. For time zones
that represent a GMT offset value, this syntax is used:
GMTOffsetTimeZone:
GMT
Sign Hours:
Minutes Sign: one of+ -
Hours: Digit Digit Digit Minutes: Digit Digit Digit: one of0 1 2 3 4 5 6 7 8 9
Hours must be between 0 and 23, and Minutes must be between 00 and 59. The format is locale independent and digits must be taken from the Basic Latin block of the Unicode standard.
For parsing, RFC 822 time zones are also accepted
- RFC 822 time zone: For formatting, the RFC 822 4-digit time zone format is
used:
RFC822TimeZone: Sign TwoDigitHours Minutes TwoDigitHours: Digit Digit
TwoDigitHours must be between 00 and 23.