2009-10-14 91 views
10

我目前正在從我們的應用程序的.ics出口工作。使用.ics文件可以刪除舊事件嗎?

我可以以某種方式刪除舊事件,所以在我第一次導入到outlook中我有152個事件,在我的第二次導入期間,我只有100個事件。然後我希望導入自動從Outlook中刪除所有52個事件,這可能嗎?

我知道我可以讓事件取消,但那不是我想要的。

+0

可能重複:http://stackoverflow.com/questions/356598/delete-calendar-event-using-icalendar-file-import-outlook-2003-問題 –

+0

不是,或者至少他似乎滿足於在他的事件中設置CANCELED,這不是我想要的。我希望從日曆中完全刪除我的活動。 – Fredrik

回答

12

對我來說,它通過在ics文件的標題中設置X-WR-RELCALID標籤。然後Outlook認識到事件是一樣的。同時在標題中設置METHOD:CANCEL,並在VEVENT中設置STATUS:CANCELLED。就像這樣:

這個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:[email protected] 
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:[email protected] 
SUMMARY:Eine Kurzinfo 
DESCRIPTION:Beschreibung des Termines 
CLASS:PUBLIC 
TRANSP:TRANSPARENT 
DTSTART:20110804 
DTEND:20110805 
DTSTAMP:20110804 
STATUS:CANCELLED 
END:VEVENT 
END:VCALENDAR 
+1

我將上面的代碼用於Google日曆。當我收到ICS文件取消時,我會查看我的Google日曆,並且以前的活動仍然存在(未刪除)。難道我做錯了什麼。 –

+0

@SahilBhatia我得到了你描述的相同結果。 Google Calendar和Yahoo Calendar導入REQUEST文件並顯示事件。然後他們導入CANCEL文件,但繼續顯示事件。 –

相關問題