如何找到DST转换时间

问题描述 投票:0回答:1

在GoLang中,有没有简单的方法可以找到给定时间范围内特定时区(例如美国/纽约)的DST转换时间? 我知道我可以编写自定义逻辑来迭代每个小时,计算每个小时的偏移量并将其与前一小时的偏移量进行比较。如果 offset 为 diff,则为 DST 切换时间 或者我可以使用 IANA 数据库

但我不想采用这些方法。我更感兴趣的是知道 GoLang 或任何提供此类功能的包中是否有任何内置功能。

go dst
1个回答
0
投票

要查找 DST 切换时间,您可以使用以下步骤:

确定您所在的时区。 了解您所在的时区是否遵守夏令时 (DST)。 如果您所在的时区遵守 DST,请找出 DST 的开始和结束日期。 DST 切换时间是指向前或向后设置时钟以遵守 DST 的时间。 例如,在美国,大多数时区都遵守 DST。 DST 的开始日期是当地时间 3 月的第二个星期日凌晨 2:00。 DST 的结束日期是当地时间 11 月第一个星期日凌晨 2:00。

因此,美国DST切换时间为:

春季前进:当地时间 3 月第二个星期日凌晨 2:00 回退:当地时间 11 月第一个星期日凌晨 2:00 印度不遵守夏令时。因此,印度没有 DST 切换时间。

© www.soinside.com 2019 - 2024. All rights reserved.