TimeZone を使用した Java での夏時間への取り組み
Java でタイム ゾーンを使用する場合、夏時間 (DST) を考慮することが重要です。 ) 正確な時刻表現を保証します。この記事では、TimeZone クラスを EST (東部標準時) と組み合わせて使用するときに発生する一般的な問題について説明します。
問題の説明:
タイム ゾーンを EST に設定する場合TimeZone.getTimeZone("EST") を使用すると、アプリケーションは DST の調整に失敗し、1 時間の差異が生じます。この問題は、TimeZone.getTimeZone("EDT") を使用している場合でも発生します。
解決策:
根本的な問題は、EST と EDT の使用に起因しています。これらの略語はそれぞれ「標準」時間と「夏時間」を指しており、タイムゾーンを完全に表すものではありません。この問題を解決するには、完全なタイム ゾーン名を使用することが不可欠です。
たとえば、標準時間と夏時間の両方を含む東部タイム ゾーンを表すには、TimeZone.getTimeZone("America/New_York") を使用します。 。これにより、アプリケーションが DST 調整を動的に処理できるようになります。
実際には、次のコード スニペットは DST に関係なく正しい時刻を出力します。
TimeZone zone = TimeZone.getTimeZone("America/New_York"); DateFormat format = DateFormat.getDateTimeInstance(); format.setTimeZone(zone); System.out.println(format.format(new Date()));
完全なタイム ゾーン名を利用することで、アプリケーションは次のことを行うことができます。夏時間に効果的に取り組み、正確な時刻表現を表示します。
以上がTimeZoneを使用してJavaで夏時間を正確に処理する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。