誰かが自分のゾーンと異なるゾーンでDateTimeのミリ秒を取得しようとすると、なぜローカルマシンのタイムゾーンのミリ秒が返ってくるのですか?ジョーダタイム変換時のゾーン時間をミリ秒に換算する
DateTimeFormatter format = DateTimeFormat.mediumDateTime();
DateTime local = new DateTime();
DateTime utc = new DateTime(System.currentTimeMillis(), DateTimeZone.UTC);
System.out.println("utc zone = " +utc.getZone());
System.out.println("UTC time: " + utc);
long current = utc.getMillis();
System.out.println("current: " + format.print(current));
System.out.println("local: " + format.print(local.getMillis()));
ここの:ここにコードがあります)
;私は、UTCのミリ秒を取得するために探していますが、アプリケーションの私の地元の設定がESTに設定されている(私はアイルランドで実際てるにもかかわらず)それは何を印刷する:
utc zone = UTC
UTC time: 2013-08-16T13:36:32.444Z
current: Aug 16, 2013 9:36:32 AM
local: Aug 16, 2013 9:36:32 AM
現在、私はそれがUTC時間と同じ日付時間を持つべきだと思いますか?
あなた 'local'と' utc'は(のみ付属異なるタイムゾーンで)、時間の同じ瞬間を表します。したがって、 'getMillis()'(Unixエポックに対応する「インスタント」からの "物理的な"時間間隔を与える)は、同じ値を返さなければなりません。 – leonbloy