如何在Dart中生成自定义json数据?

如何在Dart中生成自定义json数据?,json,flutter,class,dart,model,Json,Flutter,Class,Dart,Model,我想从该模型生成自定义json: class Book { List<Route> routes; double distance; int rateId; List<int> optionsIds; String comment; int regionId; } class Route { double lat; double lng; int order; String address; } var book = Book(

我想从该模型生成自定义json:

class Book {
  List<Route> routes;
  double distance;
  int rateId;
  List<int> optionsIds;
  String comment;
  int regionId;
}

class Route {
  double lat;
  double lng;
  int order;
  String address;
}

var book = Book();
book.routes = [Route(lat: 12, lng: 12, order: 0,address: 'address1'), Route(lat: 12, lng: 12, order: 1,address: 'address2')]; 
book.distance = 10.3;
book.rateId = 0;
book.optionsIds = [1,2];
book.comment = 'book comment';
book.regionId = 1;
忽略此文本:看起来您的帖子主要是代码;请添加更多详细信息


忽略此文本:看起来您的帖子主要是代码;请添加更多详细信息。

只需在
书籍
类中创建一个方法
toJson

教材{
列出路线;
双倍距离;
国际汇率;
列出选项ID;
字符串注释;
int regionId;
映射到JSON(){
映射json={};
对于(int i=0;i
然后只需将
jsonecode
应用于返回的
Map

print(jsonecode(book.toJson());
格式化结果:

{
“路由[0][地址]:“地址1”,
“路线[0][lat]”:12,
“路线[0][lng]”:12,
“路由[0][顺序]”:0,
“路线[1][地址]:“地址2”,
“路线[1][lat]”:12,
“路线[1][lng]”:12,
“路线[1][顺序]”:1,
“距离”:10.3,
“费率id”:0,
“选项标识[0]”:1,
“选项标识[1]”:2,
“评论”:“书籍评论”,
“区域id”:1
}

只需为您的
书籍
类创建一个方法
toJson

教材{
列出路线;
双倍距离;
国际汇率;
列出选项ID;
字符串注释;
int regionId;
映射到JSON(){
映射json={};
对于(int i=0;i
然后只需将
jsonecode
应用于返回的
Map

print(jsonecode(book.toJson());
格式化结果:

{
“路由[0][地址]:“地址1”,
“路线[0][lat]”:12,
“路线[0][lng]”:12,
“路由[0][顺序]”:0,
“路线[1][地址]:“地址2”,
“路线[1][lat]”:12,
“路线[1][lng]”:12,
“路线[1][顺序]”:1,
“距离”:10.3,
“费率id”:0,
“选项标识[0]”:1,
“选项标识[1]”:2,
“评论”:“书籍评论”,
“区域id”:1
}

{
  "routes[0][address]": "Aviasozlar, 24",
  "routes[0][lat]": 12,
  "routes[0][lng]": 12,
  "routes[0][order]": 0,
  
  "routes[1][address]": "Mustaqillik maydoni",
  "routes[1][lat]": 12,
  "routes[1][lng]": 12,
  "routes[1][order]": 1,
  
  "distance": 12,
  "rate_id": 1,
  "option_ids[]": 1,
  "option_ids[]": 2,
  "comment": "komment 1",
  "region_id": 1,
}