如何在颤振中从 JSON 对象中提取键和值

时间:2021-07-15 07:26:56

标签: flutter dart flutter-dependencies

我集成了 API,我想从 API 响应中获取键和值。我将 key 和 value 存储在两个单独的数组中并显示在 listview.so 如何从 api 响应中获取 key 和 value。

[
    { "Name": "abc"
        "Department": "Marketing",
        "EmpCode": "ABC123",
        "Salary":"20000",
        "Pincode": 100023
}]

我使用此代码得到响应:

List list = json.decode(response.body);

那么如何将姓名、部门、​​empcode 和 abc、marketing 分开。

2 个答案:

答案 0 :(得分:1)

只需使用 forEach 循环,它就会为您提取键和值,您可以根据需要存储这些键和值,而您不必担心有多少键

response.forEach((key, value){
    print('key is $key');
    print('value is $value ');
  }

答案 1 :(得分:0)

创建一个类来保存您的字段并添加一个 fromJson 方法,如下所示:

 class ClassName{
          ClassName(
              {this.Name,
              this.Department,
              this.EmpCode,
              this.Salary,
              this.Pincode,
             });
        
          String Name;
          String Department;
          String EmpCode;
          double Salary;
          String Pincode;
               
        ClassName.fromJson(Map<String, dynamic> json) {
              Name= json['Name'];
              Department= json['Department'];
              EmpCode= json['EmpCode'];
              Salary= json['Salary'];
              Pincode= json['Pincode'];
        }
    }

然后你可以用你从 API 获得的 json 做类似的事情:

var x = json.decode(response.body.toString());

var className = ClassName.fromJson(x);