iCalamus uses the ICU Date Format string syntax which is described in detail as follows.
The date/time format is specified by means of a string time pattern. The count of pattern letters determines the format. In this pattern, letters are reserved as pattern letters:
Symbol | Meaning | Presentation | Example |
G | era designator | (Text) | AD |
y | year | (Number) | 1996 |
M | month in year | (Text + Number) | July and 07 |
d | day in month | (Number) | 10 |
h | hour in am/pm (1 12) | (Number) | 12 |
H | hour in day (0 23) | (Number) | 0 |
m | minute in hour | (Number) | 30 |
s | second in minute | (Number) | 55 |
S | millisecond | (Number) | 978 |
E | day in week | (Text) | Tuesday |
D | day in year | (Number) | 189 |
F | day of week in month | (Number) | 2 (2nd Wed in July) |
w | week in year | (Number) | 27 |
W | week in month | (Number) | 2 |
a | am/pm marker | (Text) | pm |
k | hour in day (1 24) | (Number) | 24 |
K | hour in am/pm (0 11) | (Number) | 0 |
Z | time zone | (Text) | Pacific Standard Time |
' | escape for text | ||
'' | single quote | ' |
Four or more, use full form, < 4, use short or abbreviated
form if it exists. Example:
EEEE
produces Monday
, EEE
produces
Mon
.
The minimum number of digits. Shorter numbers are zero-padded
to this amount. Example:
If 'm' produces '6', 'mm' produces '06'. Year is handled
specially; that is, if the count of 'y' is 2, the Year will be
truncated to 2 digits. Example:
If 'yyyy' produces '1997', 'yy' produces '97'.
Three or over, use text, otherwise use number. (for example, 'M' produces '1', 'MM' produces '01', 'MMM' produces 'Jan', and 'MMMM' produces 'January'.)
A pattern containing any invalid pattern letter results in an error.
Format Pattern | Result |
yyyy.MM.dd G 'at' HH:mm:ss Z | 1996.07.10 AD at 15:08:56 PDT |
EEE, MMM d, ''yy | Wed, July 10, '96 |
h:mm a | 8:08 PM |
hh 'o''clock' a, ZZZZ | 09 o'clock AM. Eastern Standard Time |
K:mm a, Z | 9:34 AM, PST |
yyyy.MMMM.dd GGG hh:mm aaa | 1996.July.10 AD 12:08 PM |