我正在尝试从URL加载json文件并在Dart中解析它。因此,当我谷歌搜索时,我尝试使用以下代码建议:
HttpRequest.getString("hellknight2.js").then((response)
{
var model = new JSON.parse(response);
});
然而,它似乎在Dart SDK版本0.4.3.5_r20602上不再起作用。在Dart中将Json文件映射到对象的当前最佳方法是什么?
答案 0 :(得分:13)
只需使用json的dart:convert
package即可。这是一个例子:
import 'dart:convert';
main() {
final myJsonAsString = '{"a": 1, "b": "c"}';
final decoded = json.decode(myJsonAsString);
....
}
有关详细信息,请参阅Parsing JSON。
答案 1 :(得分:4)
就我而言
JSON.decode
没有用。
我不得不使用:
import 'dart:convert' as JSON;
final json=JSON.jsonDecode(myJsonAsString);
答案 2 :(得分:2)
这取决于很多事情。
你得到的json文本是数组还是地图?
您可以尝试:
Map model = new parse(response);
或者
List model = new parse(response);
但您需要将JSONObject by Chris Buckett导入包中
import "package:json_object/json_object.dart";
您可以从添加此依赖项的pubspec安装它
json_object
答案 3 :(得分:1)
答案 4 :(得分:1)
这是我的解决方案:)首先,您需要导入:
import 'dart:convert';
var res = json.decode(response.body);
然后您可以通过键获取值,如下所示:
print('res["message"]');
答案 5 :(得分:0)
您可以尝试此软件包。 pub: g_json
bytes,metadata