Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何在Flatter中将DateTime对象转换为json_Flutter_Dart_Flutter Layout_Flutter Dependencies_Flutter Animation - Fatal编程技术网

Flutter 如何在Flatter中将DateTime对象转换为json

Flutter 如何在Flatter中将DateTime对象转换为json,flutter,dart,flutter-layout,flutter-dependencies,flutter-animation,Flutter,Dart,Flutter Layout,Flutter Dependencies,Flutter Animation,我有DateTime,我正在尝试从JSON转换到JSON,但我得到了FormatException:未预期的字符,不知道是否有人可以帮助我或给我任何关于如何修复此错误的建议 Class Item { DateTime lastRequested; } Item.fromJson(Map<String, dynamic> json) { lastRequested = json['lastRequested'] == null ? null

我有DateTime,我正在尝试从JSON转换到JSON,但我得到了FormatException:未预期的字符,不知道是否有人可以帮助我或给我任何关于如何修复此错误的建议

Class Item {
    DateTime lastRequested;
}

  Item.fromJson(Map<String, dynamic> json) {

    lastRequested = json['lastRequested'] == null
        ? null
        : DateTime.parse(json['lastRequested'] as String);
  }


  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();

    data['lastRequested'] = this.lastRequested == null
        ? null
        : this.lastRequested.toIso8601String();
    return data;
  }
}

类项目{
最后请求的日期时间;
}
Item.fromJson(映射json){
lastRequested=json['lastRequested']==null
无效的
:DateTime.parse(json['lastRequested']作为字符串);
}
映射到JSON(){
最终地图数据=新地图();
数据['lastRequested']=this.lastRequested==null
无效的
:this.lastRequested.toIso8601String();
返回数据;
}
}

您上次请求的时间应采用正确的格式,请验证是否采用以下指定的格式之一:

"2012-02-27"
"2012-02-27 13:27:00"
"2012-02-27 13:27:00.123456789z"
"2012-02-27 13:27:00,123456789z"
"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"

无论何时,当我们创建api时,我们都无法对需要对DateTime进行解析的api进行dart格式化

您可以将日期时间作为字符串获取,然后使用日期时间进行转换

将模型类别更改为

  class DateConvert {

    String saleStartDay;

   factory DateConvert .fromJson(Map<String, dynamic> json) => DateConvert (
    saleStartDay: (json["sale_start_day"]),

  );

  Map<String, dynamic> toJson() => {
   "sale_start_day": saleStartDay,
    
  };
      }
Text(
    DateFormat.yMMMd() .format(DateTime.parse(saleStartDay)).toString(),
                                            style: TextStyle(
                                                color: Colors.red,
                                                fontWeight:
                                                    FontWeight.w300))