Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.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
Dart如何使用唯一的键、值对解析JSON_Json_Dictionary_Dart - Fatal编程技术网

Dart如何使用唯一的键、值对解析JSON

Dart如何使用唯一的键、值对解析JSON,json,dictionary,dart,Json,Dictionary,Dart,我正在解析一个包含多个键值对的JSON对象,但不确定如何使用下面的JSON生成对象。根据GET请求,键总是不同的,所以我不能像往常一样使用json['keyname']。我需要什么样的函数才能从“ccwms”返回键列表和相应的值列表(浮动) 转换json字符串的最小Dart程序: import 'dart:convert'; main() { String source = """{"X":"RRRR","Y":"SSSS","ccwms": { "frc118": 160.80

我正在解析一个包含多个键值对的JSON对象,但不确定如何使用下面的JSON生成对象。根据GET请求,键总是不同的,所以我不能像往常一样使用json['keyname']。我需要什么样的函数才能从“ccwms”返回键列表和相应的值列表(浮动)


转换json字符串的最小Dart程序:

import 'dart:convert';


main() {
  String source = """{"X":"RRRR","Y":"SSSS","ccwms": {
    "frc118": 160.8076758518209,
    "frc1255": 15.257951313413884,
    "frc1296": 11.42077882954301,
    "frc7321": -161.58464745359254
  }}""";
  dynamic target = JsonDecoder().convert(source);
  print ( source.toString());
}

这些钥匙是随机的吗?我认为键必须是预定义的,因为json是已经存在的对象的序列化,对象结构不能是随机的 希望我理解正确


应该是注释,但我现在无法添加注释。

解析JSON后,您有一个带有字符串键和一些值的普通Dart。可以通过多种方式迭代贴图,例如:

for (var key in map.keys) { doSomething(key, map[key]); }

for (var entry in map.entries) { doSomething(entry.key, entry.value); }

map.forEach(doSomething);
(,)。 我相信有更多的方法可以访问所有的键和值


如何处理键和值取决于您,它只是一张地图。

我已经对Jason进行了解码。我说的是用它制作物体。
for (var key in map.keys) { doSomething(key, map[key]); }

for (var entry in map.entries) { doSomething(entry.key, entry.value); }

map.forEach(doSomething);