web-dev-qa-db-ja.com

SimpleDateFormat 24h

SimpleDateFormatを解析してStringにするDateがあります。

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ssZ");

これを解析しているとき:

format.parse("2011-08-29T12:44:00+0200");

Date.toLocaleStringを使用すると、結果は次のようになります。

8月29日2011 00:44:00

これは当然です:

8月29日2011 12:44:00

そして、私がこれを解析しているとき:

format.parse("2011-08-29T13:44:00+0200");

次に、結果は予想どおりです。

8月29日2011 13:44:00

どうすれば修正できますか?

31
nhaarman

時間パターンにHHの代わりにhhを使用

H   Hour in day (0-23)  Number  0
k   Hour in day (1-24)  Number  24
K   Hour in am/pm (0-11)    Number  0
h   Hour in am/pm (1-12)    Number  12
100
martin clayton