任何人都可以告诉我为什么下面的代码返回10.5小时,而IST和EST之间的实际区别是9.5小时。来自不同时区的时间差
使用getRawOffset():
System.out.println(TimeZone.getDefault().getRawOffset() - TimeZone.getTimeZone("EST").getRawOffset());
使用的getOffset():
TimeZone current = TimeZone.getDefault();
TimeZone db = TimeZone.getTimeZone("EST");
long now = System.currentTimeMillis();
System.out.println(db.getOffset(now) - current.getOffset(now));
我的JVM是IST时区
不要使用 “EST”。使用“America/New_York”,如果那是你的意思区域(否则其他一些Olson ID)。 –
太棒了!有效 。谢谢 。您可以将其添加为答案。 – Rehman