渥太华的Java时区?

时间:2011-04-01 22:18:29

标签: java timezone

为什么以下行返回的TimeZone显示错误的时间:

TimeZone.getTimeZone("America/Ottawa")

现在显示10:26 PM [亚特兰大时间现在是6:26,Ottawashould也应该是下午6:26]。

我认为它有两个部分:大陆/城市,它应该返回正确的时间,我不正确吗?

2 个答案:

答案 0 :(得分:3)

正确的时区是America/Toronto。这是安大略省最大的城市。

时区名称通常采用Continent / City格式。对于加拿大和美国,时区使用州或省的最大城市。一些州在大陆/州/市中有多个时区。对于大多数其他国家而言,至少有一个时区使用最大的城市。具有多个时区的国家通常使用每个时区中最大的城市。

编辑:你的时差的可能原因是,如果找不到时区,代码默认为祖鲁时间。

答案 1 :(得分:0)

你从哪里得到America/Ottawa?你不能随便选择城市。如果Java使用与其他人相同的time zone databaseAmerica/Toronto应该有效。

更新:切换America/New_York以获得更合适的America/Toronto