我正在为我们部门编写一个简单的假期请求应用程序。它写了一个.ICS文件,然后通过电子邮件发送给所有必要的人员。
其内容的示例是:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Google Inc//Google Calendar 70.9054//EN
X-WR-CALNAME:Holiday
X-WR-TIMEZONE:Europe/London
BEGIN:VEVENT
DTSTAMP:20141216T111644Z
UID:20141216T111644Z@random.com
DTSTART;VALUE=DATE:20150223T000100
DTEND;VALUE=DATE:20150225T000100
SUMMARY:mcvpjd3-Holiday
END:VEVENT
END:VCALENDAR'
我还尝试了开始日期和结束日期,以仅删除T000100或带有T000000的日期。我尝试了T000100的开始日期,并用T235959标记了结束日期
导入谷歌日历时,它适用于单日事件,但对于上面的多日事件,它将其设置为2天事件而不是3天事件。
是我做错了什么还是什么?
谢谢
您的文件不正确,正如在线验证器所指示的那样:您有两次BEGIN:VCALENDAR
,您还将DTSTART
指定为DATE
但具有DATETIME
值。
以下是更正后的版本
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Google Inc//Google Calendar 70.9054//EN
X-WR-CALNAME:Holiday
X-WR-TIMEZONE:Europe/London
BEGIN:VEVENT
DTSTAMP:20141216T111644Z
UID:20141216T111644Z@random.com
DTSTART;VALUE=DATE:20150223
DTEND;VALUE=DATE:20150225
SUMMARY:mcvpjd3-Holiday
END:VEVENT
END:VCALENDAR