如何在Flutter中解析这个DateTime?

iyzzxitl  于 2023-03-24  发布在  Flutter
关注(0)|答案(1)|浏览(108)

如何在flutter中将此String解析为DateTime?

2023-03-20T14:16:13.7970206+03:00

我试着使用DateTime.parse,但是当打印日期时,由于时区的原因,我得到了一个时差。
我只是想解析它,使用完全相同的DateTime和它的时区,然后将它解析回完全相同的String

final datettime = DateTime.parse('2023-03-20T01:46:29.4589214+03:00');
print(datettime); // 2023-03-19 22:46:29.458921Z

“我的设备时区”当前设置为“美国时区”,但它应尊重所有时区的相同设置

gk7wooem

gk7wooem1#

我不得不使用这个包来解析它到特定的时区
https://pub.dev/packages/timezone

import 'package:timezone/timezone.dart' as tz;

    final dateTimeParsed = DateTime.parse(dateString);
    final riyadhTimeZone = tz.getLocation('Asia/Riyadh');
    var tzDateTime = tz.TZDateTime.from(dateTimeParsed, riyadhTimeZone);

相关问题