我正在制作一个创建多个VEvent的应用程序,它还需要能够更新和取消。在我搜索此信息的任何地方,没有人实际显示任何Java代码,只是用言语解释了需要做什么。所以我做了我认为正确的事情。下面是我得到的。首先,我创建了VEvent,然后尝试删除它们,但是当我打开ics文件时,日历仍然显示那些VEvent。您认为错在哪里?我该如何完成我所需要的?另外,我的应用程序与发送邀请或类似内容无关,这些事件仅应在打开文件的日历中显示。

BEGIN:VCALENDAR
PRODID:-//Ben Fortuna//iCal4j 1.0//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
DTSTART:20140402T060000
DURATION:PT1H
SUMMARY:jTextField2
SEQUENCE:0
DESCRIPTION:description
UID:jTextField21
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
DTSTART:20140403T060000
DURATION:PT1H
SUMMARY:jTextField2
SEQUENCE:0
DESCRIPTION:description
UID:jTextField22
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
DTSTART:20140404T060000
DURATION:PT1H
SUMMARY:jTextField2
SEQUENCE:0
DESCRIPTION:description
UID:jTextField23
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
UID:jTextField21
STATUS:CANCELLED
SEQUENCE:1
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
UID:jTextField22
STATUS:CANCELLED
SEQUENCE:1
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20140327T221422Z
UID:jTextField23
STATUS:CANCELLED
SEQUENCE:1
END:VEVENT
END:VCALENDAR

最佳答案

此icalendar流将如何传播到客户端?

如果日历客户端只是使用HTTP GET订阅的某个Web服务器上存储的ics文件,则客户端通常会轮询文件中的更改。不再属于该流的事件将隐式消失。

如果客户将以其他方式(例如通过电子邮件)使用iCalendar流,请指定操作方式。

无论如何,多次将具有相同事件(相同UID)的单个流置于不同状态并不是传播更改的方法。

关于java - iCal4j更新和删除iCalendar中的VEvent,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22700572/

10-10 09:36