一部の Windows XP マシンで、「協定世界時」タイム ゾーンに関連する奇妙な問題が発生しています。すべての Windows XP マシンに搭載されているわけではありませんが、搭載されているマシンでは、次の単純な Java プログラム
public class TimeTest {
public static void main(String[] args) {
System.out.println(java.util.TimeZone.getDefault());
System.out.println(new java.util.Date());
}
}
JDK 1.6.0_06 では次のように出力されます。
sun.util.calendar.ZoneInfo[id="アメリカ/カラカス",offset=-16200000,dstSavings=0,useDaylight=false,transitions=5,lastRule=null] 金 11 月 13 日 05:34:14 VET 2009
(つまり、GMT から 4 時間半遅れています)。私はロンドンに拠点を置いており、南アメリカに行ったことがないことを付け加えておきます。:-)
私の質問は次のとおりです。
- Javaはこのタイムゾーンをどこから取得しますか? GMT の新しい名前は協定世界時だと思っていました。
- 一部の Windows マシンでこのタイム ゾーンが設定されているのに、他のマシンでは設定されていないのはなぜですか?