aye aye好人,我对DateTime.parse()的行为感到困惑;
在dartpad这是有效的
void main() {
const String _iso8601 = '2019-04-01T08:30:00';
final DateTime _date = DateTime.parse(_iso8601);
print(_date.toIso8601String());
}
但在颤动中却没有,但确实如此
const String _iso8601 = '2019-04-01T08:30:00.000';
final DateTime _date = DateTime.parse(_iso8601);
我现在在渡槽中,这些都不包括这个
String _iso8601 = '2019-04-01T08:30:00Z';
请注意,“没有工作”我并不是说它返回错误,而只是一个空。
[编辑:更正
当我模拟字符串而不是从它返回的请求的主体映射它
发生了例外情况。 FormatException(null)
但是我再次使用Iso8601]
如果您对这种情况有一些经验,我可以使用一些帮助。
[编辑:请注意,渡槽在dart 2.0上运行]
感谢Francesco
接受字符串的示例:
"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"