是不是与UTC的iCalendar DTSTART不好?

问题描述:

RFC5545规范允许在UTC时间内指定DTSTART。我认为这很糟糕,并可能导致一小时后关闭。例如,我住在哪里我们尊重DST,但亚利桑那州的部分地区则不。因此,如果亚利桑那州的人创建了一个事件并且它只存储在UTC中,那么当DST打开或关闭时,我是否会遇到“一次性”问题?是不是与UTC的iCalendar DTSTART不好?

我在想,我应该总是写一个TZID标识符的DTSTART和DTEND时间。

否 - 显示时间的应用或程序应该正确地将时间转换为给定的一天。 DTSTART存储在什么时区应该没有关系。重要的是显示时间的程序在给定日期时间的正确时区转换。

围绕目标的夏令时切换。两个UTC时间将映射到相同的目标时间。

旁白: 有一些非常大的知名系统不会以最佳方式为夏令时区域设置时区,但这是一个不同的问题。

+0

你可以扩展你的旁边吗?我基本上只是在客户端转换到UTC,然后发送到服务器,然后当它从服务器回来时,我转换到本地时间。 – Gargoyle

+0

此外,如果没有问题,我很好奇,为什么像苹果的iCal程序会将它们与时区一起导出......如果他们只是使用UTC时间来处理所有事情,那么这么简单得多。 – Gargoyle

+0

对不起,如果我放在一边困惑。我不喜欢微软的处理方式 - 在夏令时切换时有点费劲 - 但这就是我挑剔的原因。 – anmari

以UTC为单位的DTSTART在经常性事件(特别是与会者)中通常不太好。例如,请参阅Should event times specified in UTC while generating ICS files, to avoid issues with myriad calendaring applications