首頁  >  文章  >  Java  >  如何準確地將 Java 日期和時間轉換為中央標準時間 (CST)?

如何準確地將 Java 日期和時間轉換為中央標準時間 (CST)?

DDD
DDD原創
2024-10-26 13:16:02636瀏覽

How to Accurately Convert Java Dates and Times to Central Standard Time (CST)?

Java 日期和時間轉換為另一個時區

在本文中,我們將探討如何將目前系統日期和時間轉換為另一個時區Java 中的不同時區。但是,我們發現參考問題中提供的程式碼在嘗試轉換為中部標準時間 (CST) 時會產生意外結果。

要解決此問題,我們可以利用以下程式碼片段,其中包含夏令時並提供準確的轉換:

<code class="java">Calendar calendar = Calendar.getInstance();
TimeZone fromTimeZone = calendar.getTimeZone();
TimeZone toTimeZone = TimeZone.getTimeZone("CST");

calendar.setTimeZone(fromTimeZone);
calendar.add(Calendar.MILLISECOND, fromTimeZone.getRawOffset() * -1);
if (fromTimeZone.inDaylightTime(calendar.getTime())) {
    calendar.add(Calendar.MILLISECOND, calendar.getTimeZone().getDSTSavings() * -1);
}

calendar.add(Calendar.MILLISECOND, toTimeZone.getRawOffset());
if (toTimeZone.inDaylightTime(calendar.getTime())) {
    calendar.add(Calendar.MILLISECOND, toTimeZone.getDSTSavings());
}

System.out.println(calendar.getTime());</code>

此更新的程式碼可確保時間轉換準確反映兩個時區之間的時差,包括夏令時所需的任何調整。利用此修訂版本,您可以放心地將日期和時間轉換為任何所需的時區。

以上是如何準確地將 Java 日期和時間轉換為中央標準時間 (CST)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn