Dart中格式化JSON的类结构
我在Dart中有一些类,我想得到它们的格式化JSON表示 例如,我有以下课程:Dart中格式化JSON的类结构,json,dart,Json,Dart,我在Dart中有一些类,我想得到它们的格式化JSON表示 例如,我有以下课程: class A { String a1; num a2; List<B> bs; } class B { String b1; num b2; } 我查看了pub存储库中的一些包,但没有找到一个适合我需要的包。也许我错过了正确的一个。如果这些分类完成了序列化和反序列化,但没有正确格式化JSON,那么您可以使用dart:convert包对JSON进行解码/编码,并传递一个缩进字符串
class A {
String a1;
num a2;
List<B> bs;
}
class B {
String b1;
num b2;
}
我查看了pub存储库中的一些包,但没有找到一个适合我需要的包。也许我错过了正确的一个。如果这些分类完成了序列化和反序列化,但没有正确格式化JSON,那么您可以使用
dart:convert
包对JSON进行解码/编码,并传递一个缩进字符串
看
import'dart:convert'显示JSON、JsonEncoder;
...
字符串json=jsonFromSerializationLib();
打印(新的jsonecoder.withIndent(“”).convert(JSON.decode(j));
您尝试了哪些软件包,哪些不适合?我尝试了,然后。我不知道如何将缩进参数传递给他们的编码函数。同时,我更改了jsonx包(向私有编码器变量添加了缩进),但这应该不是必需的。如果没有这个更改,我会联系作者。我想你只需要格式化就可以将输出呈现给用户(打印或写入文件)。我认为还有其他事情会造成更多的延误。“缩进”是几周前推出的。我想序列化框架会在某个时候增加对它的支持(特别是当你创建一个特性请求时)。我不知道,“缩进”是最近才引入的。我将创建一个功能请求。
{
"a1": "value",
"a2": 42,
"bs": [
{
"b1": "any value",
"b2": 13
},
{
"b1": "another value",
"b2": 0
}
]
}