将json映射转换为flutter中的列表



我是新来的编码,我有一个Json文件,本地存储。我已经访问了文件,但是当我将Json数据存储在列表中时,它会抛出绑定错误。如有任何帮助,不胜感激。

Future<void> readJson() async {
final response = await rootBundle.loadString('assets/json/units.json');
final data = await json.decode(response);
setState(() {
List jsonList = data["length"];
print(jsonList);
});
}

这里是json数据的样子。

{
"length" : [
{
"name": "Meter",
"conversion": 1.0,
"base_unit": true
},
{
"name": "Millimeter",
"conversion": 1000.0
},
{
"name": "Centimeter",
"conversion": 100.0
}
]
}

我试了很多方法,但都没用。

您需要将data转换为List,如下所示:

List jsonList = data["length"] as List;

您需要确定列表的数据类型是什么例如,如果你想让你的list是double类型的list,可以保存距离,你可以试试下面的代码

jsonList = (data["length"] as List).map((e)=>e["conversion"]).toList();

最新更新