已定义时出现 iCal STANDARD 或 DAYLIGHT 错误
iCal STANDARD or DAYLIGHT error when already defined
我有一个要在此处验证的 iCal 文件
出现错误 必须在第 4 行附近定义至少一个标准或日光 属性
这是顶部有时区部分的文件。
BEGIN:VCALENDAR
PRODID:-//github.com/rianjs/ical.net//NONSGML ical.net 4.0//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Australia/Sydney
X-LIC-LOCATION:Australia/Sydney
END:VTIMEZONE
BEGIN:VEVENT
ATTENDEE;CN=Adriane Bews;ROLE=REQ-PARTICIPANT:MAILTO:demo@youreontime.com
DESCRIPTION:Walter Jones (Ph 12456788) Dry off. Staff Adriane Bews
DTEND;TZID=Australia/Sydney:20200215T133500
DTSTAMP:20200215T105625Z
DTSTART;TZID=Australia/Sydney:20200215T132000
SEQUENCE:0
STATUS:TENTATIVE
SUMMARY:Walter Jones Dry off
UID:yot-10025135
END:VEVENT
END:VCALENDAR
Craig,Evan 为您指明了正确的方向。
消息的意思是如果定义了 VTIMEZONE,则必须定义 "AT LEAST ONE STANDARD OR DAYLIGHT PROPERTY"。 VTIMEZONE 是事件期间时区的完整定义 - 即如果有夏令时,则必须根据示例定义何时进行转换
BEGIN:VTIMEZONE
TZID:US-Eastern
LAST-MODIFIED:19870101T000000Z
BEGIN:STANDARD
DTSTART:19971026T020000
RDATE:19971026T020000
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19971026T020000
RDATE:19970406T020000
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
END:DAYLIGHT
END:VTIMEZONE
我个人认为,如果能够假设自己的系统和接收系统都具有最新的 Olson 数据库时区定义,从而任何重复发生的事件都将在同一天和同一时间结束,那就太好了。但是我认为不能保证这一点,所以 VTIMEZONE 允许一个人定义一个人的系统正在使用的夏令时变化等。
许多系统可以接受没有 VTIMEZONES 的 ics 文件,但它们应该存在并正确定义。
我有一个要在此处验证的 iCal 文件
出现错误 必须在第 4 行附近定义至少一个标准或日光 属性
这是顶部有时区部分的文件。
BEGIN:VCALENDAR
PRODID:-//github.com/rianjs/ical.net//NONSGML ical.net 4.0//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Australia/Sydney
X-LIC-LOCATION:Australia/Sydney
END:VTIMEZONE
BEGIN:VEVENT
ATTENDEE;CN=Adriane Bews;ROLE=REQ-PARTICIPANT:MAILTO:demo@youreontime.com
DESCRIPTION:Walter Jones (Ph 12456788) Dry off. Staff Adriane Bews
DTEND;TZID=Australia/Sydney:20200215T133500
DTSTAMP:20200215T105625Z
DTSTART;TZID=Australia/Sydney:20200215T132000
SEQUENCE:0
STATUS:TENTATIVE
SUMMARY:Walter Jones Dry off
UID:yot-10025135
END:VEVENT
END:VCALENDAR
Craig,Evan 为您指明了正确的方向。
消息的意思是如果定义了 VTIMEZONE,则必须定义 "AT LEAST ONE STANDARD OR DAYLIGHT PROPERTY"。 VTIMEZONE 是事件期间时区的完整定义 - 即如果有夏令时,则必须根据示例定义何时进行转换
BEGIN:VTIMEZONE
TZID:US-Eastern
LAST-MODIFIED:19870101T000000Z
BEGIN:STANDARD
DTSTART:19971026T020000
RDATE:19971026T020000
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19971026T020000
RDATE:19970406T020000
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
END:DAYLIGHT
END:VTIMEZONE
我个人认为,如果能够假设自己的系统和接收系统都具有最新的 Olson 数据库时区定义,从而任何重复发生的事件都将在同一天和同一时间结束,那就太好了。但是我认为不能保证这一点,所以 VTIMEZONE 允许一个人定义一个人的系统正在使用的夏令时变化等。
许多系统可以接受没有 VTIMEZONES 的 ics 文件,但它们应该存在并正确定义。