パターン文字の個数によって、 値を表すのに使用するバイト数が決まります。 文字のパターンで使用する記号は、1、2、または 4 つのグループとしてのみ使用できます。 例えば、y、yy、または yyyy などです。
以下の表は、CWF バイナリー・データの場合の dateTime シンボルを示します。
記号 | 意味 | 例 |
---|---|---|
y | 年 | 1996 |
M | 月 (年単位) | 7 |
d | 日 (月単位) | 10 |
H | 1 日単位の時間 (0 から 23) | 13 |
m | 分 (時間単位) | 30 |
s | 秒 (分単位) | 55 |
S | ミリ秒 | 978 |
X | 入力時には無視されます。 |
以下の例は、4 バイトの整数の C 言語構造 tm を示しています。
struct tm { int tm_sec; /* seconds after the minute - [0,59]*/ { int tm_min; /* minutes after the hour - [0,59]*/ { int tm_hour; /* hours since midnight - [0,23]*/ { int tm_mday; /* day of the month - [1,31]*/ { int tm_mon; /* months since January - [0,11]*/ { int tm_year; /* years since 1900 */ { int tm_wday; /* days since Sunday - [0,6]*/ { int tm_yday; /* days since January 1 - [0,365]*/ { int tm_isdst; /* daylight savings time flag */ };
ストリング "ssssmmmmHHHHddddMMMM+1yyyy+1900XXXXXXXXXXXX"を指定して、 この構造を形式設定できます。 パターン文字の数字がバイト数を決定します。このパターンには 36 個の A から Z 文字が指定されており、 これは 36 バイト構造の tm に相当します。 正符号 (+) の前のフィールドに、正符号の後の数字が加算されます。 したがって、MMMM+1 は月に 1 を加算し、 yyyy+1900 は年に 1900 を加算します。 X は 1 バイトの入力を予期しますが、その値は無視します。 出力時には、バイトを 0 として出力します。