簡體   English   中英

以“漂亮”(縮進)格式打印JSON

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM