如何转换包含UTC或EDT文本的日期,Flutter日期时间

问题描述 投票:0回答:1

现在是什么日期时间: “2024-08-29 13:15:05 +0000 UTC”或 “2024-08-29 01:33:40.774468453 -0400 美国东部时间”

我如何在 flutter 中转换和重新格式化它,它将采用什么日期格式??

尝试过原生 flutter 类和国际库

flutter date mobile flutter-dependencies hybrid-mobile-app
1个回答
0
投票

您必须将 intl 包添加到您的 pubspec.yaml 中:

您可以使用 DateTime.parse() 方法将日期字符串转换为 DateTime 对象。但是,由于第二种格式包含小数秒和时区,您可能需要直接使用 DateTime.parse(),因为它很好地支持 ISO 8601 格式。

  String dateString1 = "2024-08-29 13:15:05 +0000 UTC";
  String dateString2 = "2024-08-29 01:33:40.774468453 -0400 EDT";

  // Parse the date strings
  DateTime dateTime1 = DateTime.parse(dateString1.replaceAll(" UTC", ""));
  DateTime dateTime2 = DateTime.parse(dateString2);

  // Format the dates
  String formattedDate1 = DateFormat('yyyy-MM-dd – kk:mm').format(dateTime1);
  String formattedDate2 = DateFormat('yyyy-MM-dd – kk:mm').format(dateTime2);

  print("Formatted Date 1: $formattedDate1");
  print("Formatted Date 2: $formattedDate2");
© www.soinside.com 2019 - 2024. All rights reserved.