ホームページ  >  記事  >  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>

この更新されたコードにより、夏時間に必要な調整も含め、時間変換が 2 つのタイムゾーン間の時差を正確に反映するようになります。この改訂版を利用すると、日付と時刻を希望のタイムゾーンに確実に変換できます。

以上がJava の日付と時刻を中部標準時 (CST) に正確に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。