当前位置: 首页 > 知识库问答 >
问题:

dart中的GMT时间字符串到DateTime重复]

单于奇略
2023-03-14

我想在飞镖中将字符串转换为日期时间。我试过了

String timeVal = "Thu, 25 Mar 2021 19:29:28 GMT";
DateTime.parse(timeVal);

但是得到一个例外,

format exception(format exception:无效的日期格式2021年3月25日星期四19:29:28 GMT)

如何在dart中将这样的字符串值转换为< code>DateTime

共有1个答案

宓毅庵
2023-03-14

您可以使用intl包:

import 'package:intl/intl.dart';

void main() {
  final string = 'Thu, 25 Mar 2021 19:29:28 GMT';
  final formatter = DateFormat('EEE, d MMM yyyy HH:mm:ss');
  final dateTime = formatter.parse(string);
  print(dateTime); // prints : 2021-03-25 19:29:28.000
}

欲了解更多信息,请参阅本答案和DartFormat类文档。

请注意,示例中解析DateTime没有正确的时区(即dateTime.timeZoneName将返回您的本地时区)。

 类似资料:
  • 我尝试将格式为“23.1.2020”的字符串解析为DateTime对象,但没有任何效果。我尝试使用一些包,如intl或date_format,但这些都不能完成这项工作。 你知道怎么分析这个吗?

  • 它是使用创建的,如何将字符串转换回对象?

  • 我有一系列像“2020-04-22t09:05:28.774000+00:00”这样的字符串,如何将其转换为datetime并使用当前时间对其进行操作?谢谢你的帮助

  • 我有一个格式化的字符串日期 2020/04/16 (年/月/日) 我想把这个字符串解析成日期时间 显然不起作用,没有正确的日期格式。 有人知道把这个字符串解析成日期时间的最好方法是什么吗?

  • 主要内容:字符串插值,字符串属性,操纵字符串的方法Dart字符串数据类型表示一系列字符。Dart字符串是一系列代码单元。 Dart中的字符串值可以使用单引号或双引号或三引号表示。单行字符串使用单引号或双引号表示。三引号用于表示多行字符串。 在Dart中表示字符串值的语法如下所示 - 语法 以下示例演示了如何在Dart中使用数据类型。 它将产生以下输出 - 字符串是不可变的。但是,字符串可以进行各种操作,结果字符串可以存储为新值。 字符串插值 通过

  • 问题内容: 好的,所以我有一个字符串,说“ Tue May 21 14:32:00 GMT 2012”,我想将此字符串转换为本地时间,格式为2012年5月21日下午2:32。我尝试了SimpleDateFormat(“ MM dd,yyyy hh:mm a”)。parse(),但它引发了异常。所以我该怎么做? 异常为“未报告的异常java.text.ParseException;必须捕获或声明为抛