目录

夏令时切换时间如何计算

夏令时切换场景

在有些国家会存在夏令时切换的情况,当这种情况出现时会凭空的多出或少去一个小时,这种情况我们的程序是如何处理?又是如何计算时常的呢?

我们以墨西哥城的时间为例:

https://cdn.jsdelivr.net/gh/fengrui358/img@main/04DffMk.png
墨西哥城的时间

在 2020 年的 4 月 5 日的凌晨 3 点,会进入夏令时,时间会向前调一个小时,也就是说墨西哥城不会存在 2020 年 4 月 5 日 2 点到 2020 年 4 月 5 日 2 点 59 分的任何时间值。

消失的一个小时

下面我们用代码验证一下这个猜想

C#

1
2
3

var miss1 = new DateTime(2020, 4, 25, 2, 0, 0, DateTimeKind.Local);
var miss2 = new DateTime(2020, 4, 25, 2, 59, 59, DateTimeKind.Local);

这两个时间都正常生成成功

(未完待续…)