如何在Java 中使用時區處理夏令時
在使用需要處理時區的Java 應用程式時,考慮到這一點至關重要夏令時(DST) 的細微差別。本文旨在解決開發人員在嘗試在遵守 DST 的特定時區列印正確時間時面臨的常見問題。
問題中提到的一種方法,使用 TimeZone 將時區設為「EST」。 getTimeZone("EST") 在 DST 生效期間可能不會產生所需的結果。這是因為「EST」表示東部標準時間,不考慮夏令時。
要準確讀取正確的時間,無論夏令時如何,建議使用「TZDB」資料庫提供的特定時區 ID 。例如,要使用包含 DST 的東部時區,您可以使用 ID「America/New_York」:
<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 時區的夏令時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!