Flutter 如何将json编码为颤振/飞镖应用程序

Flutter 如何将json编码为颤振/飞镖应用程序,flutter,flutter-test,Flutter,Flutter Test,我是个新手。我能够自学如何使用JSON文件。现在我想用一个按钮在对错之间切换布尔值。我在这里走不动了 我已经看过了given的文档 我不理解这一部分以及如何应用这个stringjson=jsonEncode(user) 代码: class日期{ 最后的字符串名; 最终布尔切换; Daten(this.name,this.toggle); Daten.fromJson(映射json): name=json['name'], toggle=json['toggle']; 映射到JSON()=> {

我是个新手。我能够自学如何使用JSON文件。现在我想用一个按钮在对错之间切换布尔值。我在这里走不动了

我已经看过了given的文档

我不理解这一部分以及如何应用这个
stringjson=jsonEncode(user)

代码:

class日期{
最后的字符串名;
最终布尔切换;
Daten(this.name,this.toggle);
Daten.fromJson(映射json):
name=json['name'],
toggle=json['toggle'];
映射到JSON()=>
{
“名称”:名称,
“切换”:切换,
};
}
json:
[
{
“名称”:“Test1”,
“切换”:“错误”
},
...
]
主要内容:
Future loadTextList()异步{
String content=await rootBundle.loadString('load_json/data.json');
列表集合=json.decode(内容);
List_daten=collection.map((json)=>daten.fromJson(json)).toList();
...
ListView.builder(
...
子项:文本(“切换”),
已按下:(){
},  
)

您可以将JSON粘贴到,它将生成正确的语法进行解析

您的示例JSON

[
    {
        "name": "Test1",  
        "toggle": false
    },
    {
        "name": "Test2",  
        "toggle": true
    }
]
类和解析功能
要从Daten列表中获取JSON字符串,可以使用函数datenToJson

// To parse this JSON data, do
//
//     final daten = datenFromJson(jsonString);

import 'dart:convert';

List<Daten> datenFromJson(String str) => new List<Daten>.from(json.decode(str).map((x) => Daten.fromJson(x)));

String datenToJson(List<Daten> data) => json.encode(new List<dynamic>.from(data.map((x) => x.toJson())));

class Daten {
    String name;
    bool toggle;

    Daten({
        this.name,
        this.toggle,
    });

    factory Daten.fromJson(Map<String, dynamic> json) => new Daten(
        name: json["name"],
        toggle: json["toggle"],
    );

    Map<String, dynamic> toJson() => {
        "name": name,
        "toggle": toggle,
    };
}
//要解析此JSON数据,请执行以下操作
//
//final daten=datenFromJson(jsonString);
导入“dart:convert”;
List datenFromJson(String str)=>new List.from(json.decode(str.map)(x)=>Daten.fromJson(x));
字符串datenToJson(List data)=>json.encode(new List.from(data.map((x)=>x.toJson()));
类日期{
字符串名;
布尔开关;
达顿({
这个名字,
这个,切换,
});
工厂日期.fromJson(映射json)=>新日期(
名称:json[“名称”],
toggle:json[“toggle”],
);
映射到JSON()=>{
“姓名”:姓名,
“切换”:切换,
};
}