0

Joda DateTime でミリ秒を変換しようとしています。Millis は1338501600000 で、オンライン コンバーターと他のライブラリを使用した結果、1338501600000ミリはFri Jun 01 2012 00:00:00 GMT+0200 (CEST)です。

Jodaでは、結果は次のようになります: 2012-05-31T22:00:00.000Z

なんで?


解決済み:

long millis = 1338501600000;
TimeZone tz = TimeZone.getTimeZone("GMT+2:00");
DateTimeZone dtz = DateTimeZone.getDefault();
dtz.setDefault(DateTimeZone.forTimeZone(tz));
DateTime rightDate = new DateTime(millis,dtz);
4

2 に答える 2

2

それらは同じ日付です。GMT+0200 の日付から 2 時間を引くと、GMT タイムゾーンの Joda の結果が得られます。

単一の日付 (時間内の瞬間) は、さまざまな方法で文字列として表すことができます。表現は、この表現の生成に使用されるタイムゾーンによって異なります。

于 2012-05-04T10:17:41.440 に答える
0

Fri Jun 01 2012 00:00:00 GMT+0200 と 2012-05-31T22:00:00.000Z は同じ時刻であることに注意してください。最初のものだけがタイム ゾーン GMT+0200 で表示され、2 つ目は GMT+0200 で表示されます。 UTC (Z が示すもの)。

于 2012-05-04T10:18:51.383 に答える