如何在 Flutter 中检查日期是否过期?

Mur*_*nan 6 time date datepicker dart flutter

我如何检查日期是否过期。例如:如果过期日期是 10/01/2021,如果用户今天检查(09/01/2021),它应该打印“未过期”,如果用户在 11/01/2021 或过期天之后检查,它应该打印“Not Expired”应该打印“日期已过期”。我如何在颤振中实现这一点。

dsh*_*tjr 17

DateTimetype 有方便的方法isBeforeisAfter比较两个DateTime对象。

例如:

final now = DateTime.now();
final expirationDate = DateTime(2021, 1, 10);
final bool isExpired = expirationDate.isBefore(now);
Run Code Online (Sandbox Code Playgroud)

在此示例中,如果已超过到期日期以及尚未超过到期日期,则isExpired变量将为。truefalse

  • 请记住,这将是*当地时间*午夜。因此,如果这是一个世界范围的时间点,则可能应该使用 DateTime 的 UTC 接口来表达和计算。 (2认同)
  • 我是一个时区极客。你应该看到我一提到像夏令时这样的事情,或者更糟的是,*永久*夏令时(WTF!)。 (2认同)