在Java 中使用TimeZone 解決夏令時
夏令時(DST) 的概念通常會在程式設計中造成混亂,特別是在程式設計中造成混亂,特別是在程式設計中使用Java 的TimeZone 類別時。本文探討了在 Java 應用程式中嘗試列印東部標準時間 (EST) 時遇到的特定問題,甚至考慮夏令時。
時區縮寫問題
在給定的程式碼中,開發人員嘗試使用以下方式將時區設定為EST:
<code class="java">Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("EST"));</code>
此程式碼看起來很簡單,但潛在的陷阱在於使用3 個字母的縮寫「EST」。 」這代表東部標準時間,不考慮夏令時。簡而言之,DST 不屬於EST。
解決方案:使用TZDB 區域ID
為了避免混淆和不一致,強烈建議使用TZDB 區域ID時區縮寫。正確ID 是「America/New_York」:
<code class="java">TimeZone zone = TimeZone.getTimeZone("America/New_York");</code>
使用正確的時區ID,列印東部標準時間的當前時間(考慮夏令時)變得簡單:
此程式碼可確保列印的時間始終準確,無論是否遵守DST。 。以上是在 Java 中列印 EST 時如何考慮夏令時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!