dart - 比较两个 DateTime-s 在 Dart 中是否具有相同的年月日
问题描述
如果它们是同一日期DateTime date1
,DateTime date2
我需要比较它们。
一个简单的选项就是将date1.year
, date1.month
,date1.day
与date2
的对应值进行比较。有没有更好的办法?
解决方案
您可以编写一个易于使用的扩展:
extension DateTimeExtension on DateTime {
bool isSameDay(DateTime date) {
// ignore hour,minute,second..
final dateFormat = DateFormat("yyyy-MM-dd");
final date1 = dateFormat.format(this);
final date2 = dateFormat.format(date);
return date1 == date2;
}
}
用法:
final date1 = DateTime(2021, 12, 10, 01, 01, 01);
final date2 = DateTime(2021, 12, 10, 23, 59, 59);
print(date1.isSameDay(date2)); // true
推荐阅读
- google-cloud-platform - 努力在 Windows 上连接到 Google-Cloud-Platform
- javascript - 将表单输入保存在excel中。可下载
- ruby - YAML 使用枚举数失败
- chatbot - 更改 Zoom App (Chatbot) 的端点 URL
- javascript - 为什么可以单击提交按钮以提交表单中的数据?
- javascript - 输入字段上的自动选择在模式内不起作用
- html - prevent page jumping to anchor target
- c - Why is the code taking and giving random numbers when inputted numbers in the range?
- azure-powershell - Azure Powershell Runbook converting excel file in blob storage to csv
- azure - In the azure build pipeline, how to cleanup the docker images (created as part of the pipeline) from self hosted agent once it is pushed?