在Dart中从规则中获取下一个发生日期

时间:2019-06-27 12:02:59

标签: dart rrule

是否有Dart库,或者缺少Dart库来处理从格式正确的规则返回的下一个日期的正确方法?

例如,给出以下规则: “ FREQ = WEEKLY; BYDAY = WE; INTERVAL = 1; DTSTART = 20180328T160000Z”

我想要下一个发生的星期三的日期时间值。

1 个答案:

答案 0 :(得分:0)

不知道是否有用于此的库,但是我很快想到了这个。尚未完成,但这只是一个开始。

void main() {
    var today = DateTime.parse('20180328T160000Z');

    var days = today.weekday < DateTime.wednesday ? DateTime.wednesday - today.weekday : 7 - today.weekday + DateTime.wednesday;

    var next = today.add(new Duration(days:days));
    print(next);
}

其他人可能会提出更好的建议。解析规则将是困难的部分。

相关问题