flutter 如何在dart中从当前日期时间中减去1天?

weylhg0b  于 2023-10-22  发布在  Flutter
关注(0)|答案(4)|浏览(250)

我有一个当前的日期时间与followint函数:

String cdate = DateFormat("yyyy-MM-dd HH:mm:ss").format(DateTime.now());

现在我想从当前日期时间中减去1天或24小时。
我该怎么做?

yiytaume

yiytaume1#

不要操纵字符串,操纵日期。从文档,改编:

final now = DateTime.now();
final yesterday = now.subtract(const Duration(days: 1));

在需要显示日期之前应用格式设置,而不是之前。

a6b3iqyw

a6b3iqyw2#

日期操作方法由DateTime类提供。请参阅DateTime文档。检查nowaddsubtract
下面的代码展示了如何实现你想要的:

DateTime today = DateTime.now();
  String cdate = DateFormat("yyyy-MM-dd HH:mm:ss").format(today);

  DateTime yesterday = today.subtract(Duration(days: 1));
  String ydate = DateFormat("yyyy-MM-dd HH:mm:ss").format(yesterday);
jk9hmnmh

jk9hmnmh3#

尝试下面的代码也参考addsubtract的日期时间

void main() {
  var date = new DateTime.now();
  date = DateTime(date.year, date.month, date.day - 1);
//  or use subtract method also like below
 //final day= date.subtract(Duration(days: 1));
  print(date);
  print(day);
}

使用day-1的结果:

2022-09-13 00:00:00.000

使用subtract method的结果:

2022-09-13 12:52:45.734
44u64gxh

44u64gxh4#

final currentDay = DateTime.now();
final yesterday = now.subtract(const Duration(hours: 24));

相关问题