Java
Android
android開発
SimpleDateFormat

【Android】SimpleDateFormatのフォーマットパターン一覧

SimpleDateFormat(String pattern)の引数patternに入るフォーマットパターンの一覧

Android API Referenceの内容を少しわかりやすくしたもの
例は2017年7月8日20時11分58秒 Locale.JAPAN とする

文字 説明
G 紀元 西暦
y yyyy = 2017
yy = 17
M MMMM = 7月
MMM = 7月
MM = 07
M = 7
w 週番号 ( 年に対する ) 27
W 週番号 ( 月に対する ) 2
D 日(年に対する) 189
d 日(月に対する) 08
F aligned 2
E 曜日
u(*) 曜日番号 ( 1 = 月曜, ... , 7 = 日曜 ) 6
a AM / PM 午後
H 時間 ( 0 - 23 ) 20
k 時間 ( 1 - 24 ) 20
K AM / PM時間 ( 0 - 11 ) 8
h AM / PM時間 ( 1 - 12 ) 8
m 11
s 58
S ミリ秒 4960
z タイムゾーン ( General タイムゾーン ) JST
Z タイムゾーン ( RFC 822 タイムゾーン ) +0900

*APIレベル24から

 G,yyyy,yy,MMMM,MMM,MM,M,w,W,D,dd,d,F,E,a,H,k,K,h,mm,m,ss,SSSS,z,Z

と指定したところ

 西暦,2017,17,7月,7月,07,7,27,2,189,08,8,2,土,午後,20,20,8,8,11,11,58,4960,JST,+0900 

と返ってきました
その結果を踏まえた表です
API21だったのでuの例は推測です
シュミレーター動かすの面倒

YとXに関しては、

Unknown pattern character 'X'
Unknown pattern character 'Y'

と出てしまい取得することができませんでした
誰か何か知ってたら教えてください

またこのような場でのアウトプット初めてですので至らない点あったらコメントいただけるとありがたいです
フルボッコにしてあげてください

出典:Android Developers リファレンス SimpleDateFormat

追記

今更リファレンスを確認したところ、
X, Yの値が取れなかったのはAPIレベルの問題だったようです

だからエミュレーターを動かすべきなんですまったく