首页 新闻 会员 周边 捐助

美国时间判断是否是夏令时问题

-1
[已解决问题] 解决于 2017-06-14 09:33

网上得知2017年美国(太平洋时区)从2017年03月12日当地时间早上02:00(北京时间14:00)开始,至2017年11月5日结束,  为什么调用微软的系统方法,进行判断,和网上公布的时间有点出入,

测试代码如下:

TimeZoneInfo timeZoneInfo=TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");

 DateTime date1 = new DateTime(2017, 3, 12, 2, 0, 0); //2017/03/12 2:00:00

  bool result1= timeZoneInfo.IsDaylightSavingTime(date1);

 

 DateTime date2 = new DateTime(2017, 3, 12, 2, 50, 0); //2017/03/12 2:50:00

  bool result2= timeZoneInfo.IsDaylightSavingTime(date2);

 

 DateTime date3 = new DateTime(2017, 3, 12, 3, 0, 0); //2017/03/12 3:00:00

  bool result3= timeZoneInfo.IsDaylightSavingTime(date3);

 

针对上面3个测试结果

1). //2017/03/12 2:00:00  result: false

2). //2017/03/12 2:50:00 result:false

3). //2017/03/12 3:00:00 result:true

谁能解释一下是什么原因?

 

 

 

 

 

 

resuult
碎豆芽的主页 碎豆芽 | 菜鸟二级 | 园豆:225
提问于:2017-06-10 16:13
< >
分享
最佳答案
0

一般在天亮早的夏季人为将时间提前一小时,可以使人早起早睡,减少照明量,以充分利用光照资源,从而节约照明用电

这个是夏时制的来源

夏时制开始后

时间会从3/12号的凌晨2点,直接跳到凌晨3点

相当于1点59分59秒以后,就是3点了,所以你1,2的测试结果是不存在的

奖励园豆:5
兰冰点点 | 菜鸟二级 |园豆:401 | 2017-06-11 20:58

谢谢

 

碎豆芽 | 园豆:225 (菜鸟二级) | 2017-06-14 09:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册