### Date format string syntax

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:

Table 8: ICU Date format
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 |  | '

Text

  Four or more, use full form, < 4, use short or abbreviated form if it exists. Example:
  EEEE produces Monday, EEE produces Mon.

Number

  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'.

Text + Number

  Three or over, use text, otherwise use number. (for example, 'M' produces '1', 'MM' produces '01', 'MMM' produces 'Jan', and 'MMMM' produces 'January'.)

Hint: Any characters in the pattern that are not in the ranges of ['a'..'z'] and ['A'..'Z'] will be treated as quoted text. For instance, characters like ':', '.', ' ', '#' and '@' will appear in the resulting time text even they are not enclosed within single quotes.

A pattern containing any invalid pattern letter results in an error.

Table 9: ICU Date Format samples
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