使用.ics文件可以删除旧事件吗?

时间:2009-10-14 14:26:32

标签: import calendar vcalendar

我目前正在从我们的应用程序中进行.ics导出。

我可以以某种方式删除旧事件,因此在我第一次导入Outlook时,我有152个事件,在我第二次导入时,我只有100个事件。然后我想导入自动删除Outlook中的所有52个事件,这可能吗?

我知道我可以取消活动,但这不是我想要的。

1 个答案:

答案 0 :(得分:15)

对我来说,它通过在ics文件的标题中设置X-WR-RELCALID标记来起作用。然后Outlook认为该事件是相同的。同时在标题中设置METHOD:CANCEL,在VEVENT中设置STATUS:CANCELED。像这样:

这是创建活动的ics:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:http://www.example.com/example/
X-WR-RELCALID:ABC
METHOD:PUBLISH
BEGIN:VEVENT
UID:ThisIsTheUID
SEQUENCE:0
ORGANIZER;CN="Mustermann, Max":MAILTO:max@mustermann.com
SUMMARY:Eine Kurzinfo
DESCRIPTION:Beschreibung des Termines
CLASS:PUBLIC
TRANSP:TRANSPARENT
DTSTART:20110804
DTEND:20110805
DTSTAMP:20110804
END:VEVENT
END:VCALENDAR

此ics取消/删除事件:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:http://www.example.com/example/
X-WR-RELCALID:ABC
METHOD:CANCEL
BEGIN:VEVENT
UID:ThisIsTheUID
SEQUENCE:2
ORGANIZER;CN="Mustermann, Max":MAILTO:max@mustermann.com
SUMMARY:Eine Kurzinfo
DESCRIPTION:Beschreibung des Termines
CLASS:PUBLIC
TRANSP:TRANSPARENT
DTSTART:20110804
DTEND:20110805
DTSTAMP:20110804
STATUS:CANCELLED
END:VEVENT
END:VCALENDAR