我通过PHP和JS生成ICS文件。
BEGIN:VCALENDAR
VERSION:2.0
PRODID:https://www.google.com/
CALSCALE:GREGORIAN
TZ:+00
BEGIN:VEVENT
UID:https://www.google.com/
DTSTAMP:20180308T140833Z
DTSTART;VALUE=DATE:20180308
DTEND;VALUE=DATE:20180312
SUMMARY:"Hamlet"
X-ALT-DESC;FMTTYPE=text/html:<!DOCTYPE HTML><HTML><BODY>Show Times:<br/>March 8-11, 2018 @ 7:30 pm<br/> March 12, 2018 @ 2:00 pm<br/>Often dubbed the “Greatest Play Ever Written” and written by the most produced playwright each year, William Shakespeare, the titular Hamlet.<br/><a href=https://www.whittierevents.com/events/hamlet/>https://www.whittierevents.com/events/hamlet/</a></BODY></HTML>
LOCATION:6760 Painter Ave, Whittier, CA 90601
END:VEVENT
END:VCALENDAR当我在outlook中导入这个文件时,结束日期显示为3月11日,尽管它是3月12日。我怎么才能解决这个问题?
发布于 2017-11-16 04:58:47
根据规范,全天事件的结束是第二天的开始。因此,ics文件中的1天事件将有2个日期- DTEND将是DTSTART的第二天。因此,在我们的例子中,为了使它看起来像是在应用程序中的第12号结束,.ics文件必须说是13。另见Exclusive/Inclusive DTEND according to RFC5545 and Fullcalendar in event with time part, how to do it right?
https://stackoverflow.com/questions/47151477
复制相似问题