我有以下代码:
java.util.TimeZone tz = java.util.TimeZone.getDefault();
System.out.println("Server DS Offset: " + tz.getDSTSavings());
现在夏令时已关闭,所以我期望它返回 0,但它仍然返回 3600000。
服务器是Solaris 10
日期
命令返回:
Friday, November 11, 2016 4:27:12 PM EST
env
返回:
TZ=Canada/Eastern
最佳答案
怎么样Determine whether daylight savings time dst is active
您在代码中得到的是关于 DST 偏移量的 TimeZone 属性。世界上有些偏移是 30 分钟。有些没有。因此,如果时区遵循 DST,那么您就得到了这个值。
关于java - 从时区对象返回错误的夏令时偏移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40556473/