0

date現在、AIX SERVER を使用しており、端末でコマンドを発行すると、 Mon Nov 4 00:28:40 EST 2013.

そして、秒の値は 1383561560 で、これは からの秒数ですWednesday, 31 December 1969, 19:00:00 (UTC time)

31 December 1969, 19:00:00 (UTC time)これで、EST 時間以降の日付と時刻を計算するコードができまし た。

DateFormat df = new SimpleDateFormat("MM/dd/yyyy_HH:mm:ss a");
df.setTimeZone(TimeZone.getTimeZone("EST"));
long ms = (long)(1383560920) *1000;
Date d1 = new Date(ms);
String formattedDate = df.format(d1); 
System.out.println("Now the date/time is "+formattedDate );

現在表示されている日時は11/04/2013_05:28:40 AM

ここで、なぜ5時間の違いがあるのですか?

4

1 に答える 1

1

JavaDateの基本時間は から始まり1 January 1970, 00:00:00ますが、あなたの時間は31 December 1969, 19:00:00です。したがって、計算された時間の差は 5 時間になります。

詳細については、このドキュメントをお読みください。

Date オブジェクトを割り当て、それを初期化して、「エポック」と呼ばれる標準の基本時刻 (1970 年 1 月 1 日 00:00:00 GMT) からの指定されたミリ秒数を表します。

パラメータ: date - 1970 年 1 月 1 日 00:00:00 GMT からのミリ秒。

于 2013-11-04T06:02:53.330 に答える