1. ホーム
  2. java

[解決済み] java 8 Instant.now()が間違ったインスタント時刻を表示する

2022-02-15 03:07:27

質問

Java 8では Instant.now() メソッドは間違った時間を表示します。 私のコードは次のようになります。

import java.time.*;
import java.time.temporal.*;
public class DateTimeDemo{
    public static void main(String []args){
            Instant now = Instant.now();
            System.out.println(now);
        }

    }

日付の部分は正しいのですが、時間の部分が.

<ブロッククオート

2016-07-11T11:01:25.498Z しかし、私のシステムでは午後4時31分になっています。

アジア/カルタタイムゾーンを使用しています。

解決方法は?

これが正しい時刻だ。最後のquot;Z"に注意してください。 UTC - UTCの11:01:25はアジア/カルカッタでは16:31:25です。

デフォルトのタイムゾーンで "now"を表現したい場合は、次のようにします。 ZonedDateTime.now() の代わりに