【发布时间】:2017-09-10 04:41:14
【问题描述】:
RFC5545 规范允许以 UTC 时间指定 DTSTART。我认为这很糟糕,可能会导致一个小时的关闭。例如,在我居住的地方,我们尊重 DST,但亚利桑那州的部分地区却没有。因此,如果亚利桑那州的人创建了一个事件并且它只是存储在 UTC 中,那么当 DST 打开或关闭时我不会有“一次性”问题吗?
我在想我应该总是用 TZID 标识符写入 DTSTART 和 DTEND 时间。
【问题讨论】:
RFC5545 规范允许以 UTC 时间指定 DTSTART。我认为这很糟糕,可能会导致一个小时的关闭。例如,在我居住的地方,我们尊重 DST,但亚利桑那州的部分地区却没有。因此,如果亚利桑那州的人创建了一个事件并且它只是存储在 UTC 中,那么当 DST 打开或关闭时我不会有“一次性”问题吗?
我在想我应该总是用 TZID 标识符写入 DTSTART 和 DTEND 时间。
【问题讨论】:
否 - 显示时间的应用或程序应正确转换给定日期的时间。将 DTSTART 存储在哪个时区并不重要。重要的是显示时间的程序在给定日期的正确时区转换。
所以在目的地的夏令时切换前后。两个 UTC 时间将映射到相同的目标时间。
另外: 有一些非常知名的系统不会以最佳方式为夏令时区域设置时区,但这是一个不同的问题。
【讨论】:
UTC 中的 DTSTART 主要是在重复事件的情况下(尤其是与与会者一起)。例如,请参阅Should event times specified in UTC while generating ICS files, to avoid issues with myriad calendaring applications。
【讨论】: