2011-12-20 9 views
1

DateTimestimestampsとして保存しています。 Joda TimeがこれらのDateTimesのAM/PM部分を間違って解釈しています。AM/PMを間違って解釈するJoda Time

DateTime dt = new DateTime(1324231621L * 1000); // long pulled from DB as timestamp 
DateTimeFormatter fmt = DateTimeFormat.forPattern("h:mm aa z"); 
String timeStr = fmt.print(dt); 

上記12:07 AM CSTをもたらすはずであるが、代わりに12:07 PM CSTになります。

時間が24時間であると解釈されているようですが、小文字の「h」を使用しているため、理由はわかりません。本当の理由は何ですか?

答えて

2

私はあなたが間違った価値を持っていると思います。そのタイムスタンプは2011-12-18T18:07:01 UTCです - それで 12:07 pmです。それが12:07になることを意図していたなら、それは長いフォームにそれを取り込むことに関係していたものはすべて誤りであることを示唆しています - これはデータベースに入れるプロセスであろうと、それをデータベースから取り出しました。

+0

私はデータベースを詳しく見て、タイムスタンプが確かに2011-12-18 12:07:01として保存されていることに気付きました。明らかに、問題はタイムスタンプ挿入プロセスにあります。正しい方向に私を指してくれてありがとう。 –

関連する問題