Field Reportsには,日付または時刻のデータを書式変換する機能があります。ほとんどのプログラミング言語では自前の日付/時刻の書式変換機能を持っていますが,和暦の変換機能は珍しいのではないでしょうか?
今回は和暦の変換を中心に日付/時刻書式変換機能をご紹介します。
入力データ
Field Reportsでは,日付/時刻のデータを以下の書式の文字列で表現します。
YYYY-MM-DDThh:mm:ss
これはISO 8601規格に準じた形式で,“T”により日付と時刻を区切ります。
「YYYY-MM-DD」や「hh:mm:ss」のように,日付や時刻だけを表すこともできます。
また,ISO 8601規格からは外れますが,“T”の代わりにスペース“ ”を使っても良いことにしています。
書式指定文字列
日付/時刻の書式変換文字列として,以下のプレースフォルダを使用することができます。
書式指定文字列 | 意味 |
---|---|
YY |
2桁年(0パディングする) |
YYYY |
4桁年(0パディングする) |
M |
月(0パディングしない) |
MM |
月(0パディングする) |
B |
月略名(Jan., Feb.,..., Dec.) |
BB |
月正式名(1月, 2月,..., 12月) |
D |
日(0パディングしない) |
DD |
日(0パディングする) |
A |
曜日略名(日, 月,..., 土) |
AA |
曜日正式名(日曜日, 月曜日,..., 土曜日) |
G |
年号略名(M, T, S, H) |
GG |
年号正式名(明治, 大正, 昭和, 平成) |
E |
和暦(0パディングしない) |
EE |
和暦(0パディングする) |
h |
時(24時間表記,0パディングしない) |
hh |
時(24時間表記,0パディングする) |
H |
時(12時間表記,0パディングしない) |
HH |
時(12時間表記,0パディングする) |
m |
分(0パディングしない) |
mm |
分(0パディングする) |
s |
秒(0パディングしない) |
ss |
秒(0パディングする) |
t |
午前/午後略名(AM, PM) |
tt |
午前/午後正式名(午前, 午後) |
\<文字> |
エスケープ文字 |
'<文字列>', "<文字列>" |
リテラル文字列 |
<その他の文字> |
結果の文字列にコピーされる。 |
和暦の年号を表示するには,GまたはGGを使用します。
Gを使うと年号の略名(M, T, S, H)に変換されます。
GGを使うと年号の正式名(明治, 大正, 昭和, 平成)に変換されます。
和暦の年を表示するには,EまたはEEを使用します。
Eを使うと0パディングしない和暦に変換されます。
EEを使うと0パディングした2ケタの和暦に変換されます。
明治以前の年が入力された場合は,西暦表示に切り替わり“A.D.”または“西暦”と表示します。
実行例
書式指定 | 日付/時刻 | 変換後文字列 |
---|---|---|
YYYY年MM月DD日 |
2010-10-23 |
2010年10月23日 |
hh:mm:ss |
15:24:35 |
15:24:35 |
GGEE年MM月DD日 |
1911-04-04 |
明治44年04月04日 |
AA |
2040-01-01 |
日曜日 |