如何在Darts / flutter中将复杂的JSON解析为列表
我在地图上有消息,但我需要一些帮助来解析和获取值
这是JSON:..
{
"jobs": [
{
"id": "S_1244",
"title": "Title1",
"location": {
"city": "Miami",
"stateCode": "FL"
},
"salary": {
"symbol": "US$",
"min": "26.15",
"max": "27.15"
},
"type": "Temporary",
"posted": 1530027914570
},
{
"id": "S_1234",
"title": "Title1",
"location": {
"city": "Miami",
"stateCode": "FL"
},
"salary": {
"symbol": "US$",
"min": "26.15",
"max": "27.15"
},
"type": "Temporary",
"posted": 1530027914570
}
]
}
我的身体在地图上
Map map = jsonDecode(data.body);
感谢您的帮助
答案 0 :(得分:0)
也许可以使用更清洁的方法来完成此操作,但是似乎可以。
Map map = jsonDecode(data.body);
List jobList = map["jobs"];
for ( var job in jobList ) {
print("id= ${job['id']} title=${job['title']} location=${job['location']['city']} ");
}
答案 1 :(得分:0)
您可以选择对json中的所有内容建模。这是开始的代码。
Map myMap = json.decode(response.body);
Iterable i = myMap['jobs'];
List<Jobs> jobs = i.map((model) => Jobs.fromJson(model)).toList();
}
class Jobs {
Jobs({this.id, this.title, this.type});
String id;
String title;
String type;
Jobs.fromJson(Map<String, dynamic> json)
: id = json['id'],
title = json['title'],
type = json['type'];
}
您将得到作业列表,这是json中作业的普通旧Java类表示形式。您也可以建模位置和薪水。