Ical4j。 RFC5545。使用排除计算事件发生次数

时间:2017-07-17 11:57:52

标签: java groovy rfc5545 recurring-events ical4j

我检查 ical4j 库。我需要计算事件发生时间。有用的计算示例是here。我尝试添加排除

    VEvent event = new ContentBuilder().vevent {
        dtstart('20101113', parameters: parameters() {value('DATE')})
        dtend('20101114', parameters: parameters() {value('DATE')})
        rrule('FREQ=WEEKLY;WKST=MO;INTERVAL=3;BYDAY=MO,TU,SA')
        // I've added next row, the value is present in result occurrences
        exdate('20101221T000000Z/P1D')
    }
    def dates = event.calculateRecurrenceSet(new Period('20101101T000000/20110101T000000'))
    println dates

但事件计算没有改变。有人可以帮我解决一下吗?

1 个答案:

答案 0 :(得分:1)

你不应该包括:

/P1D

要排除一个日期,您可以使用以下内容:

exdate('20101221T000000Z')

如果您需要排除多个日期,可以用逗号分隔:

exdate('20101129T000000Z,20101221T000000Z')