你好,我有个问题!
我想将格林威治标准时间(GMT)解析为毫秒。
例如:Thu, 10 Oct 2019 02:05:09 GMT.
我尝试DateTime.parse("Thu, 10 Oct 2019 02:05:09 GMT")
我收到此错误
小部件库捕获到Exception,以下FormatException是 抛出的建筑物GroupPage(脏,状态:_GroupPage#cb39c):无效 日期格式2019年10月10日星期四02:05:09 GMT
答案 0 :(得分:0)
DateTime.parse
只能解析ISO 8601日期,而不是任意日期。来自文档:
该函数解析ISO 8601的子集,其中包括该子集 被RFC 3339接受。
可接受的字符串示例:
"2012-02-27 13:27:00" "2012-02-27 13:27:00.123456z" "2012-02-27 13:27:00,123456z" "20120227 13:27:00" "20120227T132700" "20120227" "+20120227" "2012-02-27T14Z" "2012-02-27T14+00:00" "-123450101 00:00:00 Z": in the year -12345. "2002-02-27T14:00:00-0500": Same as "2002-02-27T19:00:00Z"
DateTime.parse
方法不是日期字符串的选项,除非您以ISO 8601格式获取它。
答案 1 :(得分:0)
intl
程序包可以解析相对灵活的日期和时间:https://pub.dev/packages/intl#date-formatting-and-parsing
答案 2 :(得分:0)
您可以使用HttpDate
类来对此进行解析。
示例:
DateTime parsedDate = HttpDate.parse("Thu, 10 Oct 2019 02:05:09 GMT");