以"漂亮"(缩进)格式打印JSON

pad*_*bro 3 delphi json

如果我创建一个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);
Run Code Online (Sandbox Code Playgroud)

结果是:

{"Hello":"World", "Ciao":"Mondo"}
Run Code Online (Sandbox Code Playgroud)

我怎么能用更好的缩进打印结果,像这样?

{
   "Hello":"World",
   "Ciao":"MOndo"
}
Run Code Online (Sandbox Code Playgroud)

Dav*_*nan 5

TJSONObject 不支持漂亮的打印.

其他JSON库也可以.例如SuperObject,如下所述:如何在Delphi中打印JSON?

  • 由于Delphi XE5有格式化程序[`REST.Json.TJson.Format`](http://docwiki.embarcadero.com/Libraries/XE5/en/REST.Json.TJson.Format) (3认同)