[英]Print JSON with “pretty” (indented) format
如果我创建一个JSON对象并在控制台上打印它:
LJSONObject:= TJSONObject.Create;
LJSONObject.AddPair(TJSONPair.Create(TJSONString.Create('Hello'), TJSONString.Create('World')));
LJSONObject.AddPair(TJSONPair.Create(TJSONString.Create('Ciao'), TJSONString.Create('Mondo')));
Writeln(LJSONObject.ToString);
结果是:
{"Hello":"World", "Ciao":"Mondo"}
我怎么能用更好的缩进打印结果,像这样?
{
"Hello":"World",
"Ciao":"MOndo"
}
TJSONObject
不支持漂亮的打印。
其他JSON库也可以。 例如SuperObject ,如下所述: 如何在Delphi中打印JSON?
正如Rufo爵士指出的那样,XE5有一个内置选项。
uses REST.JSON,System.JSON;
...
function PrettyJSON(jsonstring:String):String;
var jdoc:TJSONObject;
begin
jdoc:=TJSONObject.ParseJSONValue(jsonstring) as TJSONObject;
result:=TJSON.Format(jdoc)
end;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.