本节目标

  • 声明
  • UTC 时间
  • 公元时间
  • 时间戳
  • 解析标准时间
  • 时间运算

环境

  • Dart 2.0.0

声明

1
2
3
4
var now = new DateTime.now();
print(now);
var d = new DateTime(2018, 10, 10, 9, 30);
print(d);

创建时间 UTC

1
2
var d = new DateTime.utc(2018, 10, 10, 9, 30);
print(d);

解析时间 IOS 8601

1
2
3
4
var d1 = DateTime.parse('2018-10-10 09:30:30Z');
print(d1);
var d2 = DateTime.parse('2018-10-10 09:30:30+0800');
print(d2);

时间增减量

1
2
3
4
var d1 = DateTime.now();
print(d1);
print(d1.add(new Duration(minutes: 5)));
print(d1.add(new Duration(minutes: -5)));

比较时间

1
2
3
4
5
6
7
var d1 = new DateTime(2018, 10, 1);
var d2 = new DateTime(2018, 10, 10);
print(d1.isAfter(d2));
print(d1.isBefore(d2));
var d1 = DateTime.now();
var d2 = d1.add(new Duration(milliseconds: 30));
print(d1.isAtSameMomentAs(d2));

时间差

1
2
3
4
var d1 = new DateTime(2018, 10, 1);
var d2 = new DateTime(2018, 10, 10);
var difference = d1.difference(d2);
print([difference.inDays, difference.inHours]);

时间戳

1
2
3
var now = new DateTime.now();
print(now.millisecondsSinceEpoch);
print(now.microsecondsSinceEpoch);

代码

参考


© 猫哥

https://ducafecat.tech