我有一个这样的时间戳:
int? completedTimestamp; //1657948481451
当我试图将其转换为这样的日期时:
var date = DateTime.fromMicrosecondsSinceEpoch(completedTimestamp!, isUtc: true);
日期返回:
1970-01-20 04:32:28
我预计2022-07-16 5:14:41
我在这里做错了什么?
您需要将时间戳(以毫秒为单位(转换为日期,如下所示:
var date = DateTime.fromMillisecondsSinceEpoch(completedTimestamp!, isUtc: true);
您使用的时间戳是自epoch以来的毫秒数,因此您希望使用fromMillisecondsSinceEpoch()
,而不是fromMicrosecondsSinceEpoch()
。
DateTime.fromMillisecondsSinceEpoch()
将返回2022-07-16 05:14:41.451Z
的正确时间戳。