Java でタイムゾーンを使用する場合、夏時間 (DST) によって引き起こされる不一致を避けるために、適切なゾーン識別子を使用することが不可欠です。 )。 DST は、正しく処理されないと時間の計算を狂わせる可能性があります。
特定のケースでは、タイムゾーン識別子として「EST」を使用すると問題が発生します。 「EST」は東部標準時を表し、DST は調整されません。これにより、アプリケーションでは DST 中に実際の時間より 1 時間短く印刷されます。
この問題を解決するには、「EST」の代わりにフル ゾーン識別子「America/New_York」の使用に切り替えます。このゾーンは東部時間帯を表し、DST に合わせて自動的に調整されます。適切なゾーン識別子を利用することで、DST に関係なく、コードは常に正しい時刻を取得します。
正しいゾーン識別子を使用した更新されたコード スニペットは次のとおりです。
<code class="java">TimeZone zone = TimeZone.getTimeZone("America/New_York"); DateFormat format = DateFormat.getDateTimeInstance(); format.setTimeZone(zone); System.out.println(format.format(new Date()));</code>
この調整により、アプリケーションは、DST を考慮して、一貫して EST 時間を出力します。
以上がJava で TimeZone を使用して夏時間の問題を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。