简体   繁体   English

当日期为夏令时时,GregorianCalendar.getTime() 默认时间不同

[英]GregorianCalendar.getTime() default time is different when date is day light saving day

I have a very strange issue.我有一个非常奇怪的问题。 I am not able to consistently recreate but its happening.我无法始终如一地重新创建,但它正在发生。 So when the date is 04/25/1948, GregorianCalendar.getTime() returns Date as因此,当日期为 1948 年 4 月 25 日时,GregorianCalendar.getTime() 将日期返回为

Sun Apr 25 1:00:00 EDT 1948

I am not sure why it has time of 1:00:00 and not 00:00:00.我不确定为什么它的时间是 1:00:00 而不是 00:00:00。 I am not setting any time in date.我没有设置任何日期时间。 Do you guys have any pointers of why it would set time of 1:00:00.你们有任何关于为什么将时间设置为 1:00:00 的指示吗?

note: I am in EST time zone.注意:我在 EST 时区。

Thanks!谢谢!

In Sun Apr 25 1:00:00 EDT 1948 , EDT indicates it is Eastern Daylight Time and currently your machine is on EST.Sun Apr 25 1:00:00 EDT 1948中,EDT 表示现在是东部夏令时间,当前您的机器在 EST 上。 Hence, you are seeing a difference of 1 hour.因此,您会看到 1 小时的差异。

On April 25 1948, Daylight savings was activated and EST transitioned to EDT. 1948 年 4 月 25 日,夏令时被激活,EST 过渡到 EDT。

For eg.例如。 check this to see history of daylight savings changes of Detroit.检查以查看底特律夏令时更改的历史记录。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM