我做了一个简单的功能,可以将纪元时间转换为某种格式
String convertEpochToHuman(int epoch) {
final DateTime timeStamp = DateTime.fromMillisecondsSinceEpoch(epoch * 1000);
var format = new DateFormat('HH:mm, yyyy-MM-DD');
return format.format(timeStamp);
}
转到here,我得到了“当前Unix纪元时间是”值,并将其放入我的代码中。在模拟器上运行它时,我得到了正确的日期,但时间提前了5个小时(我在加拿大东海岸时区)。因此,即使模拟器是东部时间,结果也是GMT值。
如何确保根据我的时区完成时间转换?
谢谢
答案 0 :(得分:0)
通过isUtc: true
(默认为false
)
final DateTime timeStamp = DateTime.fromMillisecondsSinceEpoch(epoch * 1000, isUtc: true);