dart - 在 Dart 中,从规则中获取下一个发生日期
问题描述
是否有 Dart 库,或者缺少一个正确的方法来处理查找将从正确格式的规则返回的下一个日期?
例如给出以下规则:“FREQ=WEEKLY;BYDAY=WE;INTERVAL=1;DTSTART=20180328T160000Z”
我想要下一个星期三的日期时间值。
解决方案
不知道是否有这个库,但我很快想出了这个。不完整,但它是一个开始。
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);
}
其他人可能会想出更好的东西。解析规则将是困难的部分。
推荐阅读
- heroku - 如何在 HerokuApp 上访问 root 以使用 wget 命令
- android - 计费 API 3.0。价格变动用户通知
- flutter - 什么是 NoSuchMethod 错误,我该如何解决?
- visual-studio-code - VS Code + PHP Intelephense + Remote-SSH + Symfony 3:未定义的方法错误
- php - KNP Paginator 在 Symfony 5 中显示 Invalid item per page number 错误
- elasticsearch - 获取 Elasticsearch 中字段值与任何数组元素匹配的所有文档
- python - Pandas 按日期分组和计数。然后将计数转置为列名
- python - 如何将列表的一系列元素添加到python中的另一个列表
- c# - 更新选定值后如何更新数据网格
- python - Python glob 没有找到任何结果