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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/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
Dart json.decode可以';t解码到地图<;字符串,字符串>;_Json_Dart - Fatal编程技术网

Dart json.decode可以';t解码到地图<;字符串,字符串>;

Dart json.decode可以';t解码到地图<;字符串,字符串>;,json,dart,Json,Dart,我的代码: import 'dart:convert'; String jsonString = '''{ "a": "g", "b": "h", "c": "j", "d": "k" }'''; Map<String, String> map = json.decode(jsonString); 导入'dart:convert'; 字符串jsonString='''{ “a”:“g”, “b”:“h”, “c”:“j”, “d”:“k” }'''; Map Map=json.

我的代码:

import 'dart:convert';

String jsonString = '''{
"a": "g",
"b": "h",
"c": "j",
"d": "k"
}''';

Map<String, String> map = json.decode(jsonString);
导入'dart:convert';
字符串jsonString='''{
“a”:“g”,
“b”:“h”,
“c”:“j”,
“d”:“k”
}''';
Map Map=json.decode(jsonString);
获取错误:

Unhandled exception:
type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'Map<String, String>'
#0      main (file:///...)
#1      _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:298:32)
#2      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)
未处理的异常:
类型“\u InternalLinkedHashMap”不是类型“Map”的子类型
#0主(file:///...)
#1_星状。(省道:隔离补片/隔离补片。省道:298:32)
#2 RawReceivePortImpl.handleMessage(dart:隔离补丁/隔离补丁。dart:171:12)
地图…
地图地图…
我们正在工作


最后,我尝试对不同的JSON进行反序列化
Map
,它给了我相同的错误,因此我决定首先使用基本的
Map
,以更好地了解我做错了什么

以确保使用该方法将JSON转换为指定的值

所以你的代码变成了

导入'dart:convert';
空干管(){
字符串jsonString='''
{
“a”:“g”,
“b”:“h”,
“c”:“j”,
“d”:“k”
}''';
Map Map=Map.castFrom(json.decode(jsonString));
印刷(地图);
}

注意,如果类型不兼容,它将抛出。你应该总是考虑处理它。

尝试<代码> map data = map。如果此操作仍然失败,请检查JSON数据中的所有值是否都是StringThis类型,是否可以将其作为答案发布?