Sample code for 30+ languages & platforms
Delphi ActiveX

Pretty Print JSON (Formatter, Beautifier)

See more JSON Examples

Demonstrates how to emit JSON in a pretty, human-readable format with indenting of nested arrays and objects.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
json: TChilkatJsonObject;
jsonStr: WideString;

begin
success := 0;

json := TChilkatJsonObject.Create(Self);

jsonStr := '{"name": "donut","image":{"fname": "donut.jpg","w": 200,"h": 200},"thumbnail":{"fname": "donutThumb.jpg","w": 32,"h": 32}}';

success := json.Load(jsonStr);
if (success <> 1) then
  begin
    Memo1.Lines.Add(json.LastErrorText);
    Exit;
  end;

// To pretty-print, set the EmitCompact property equal to 0
json.EmitCompact := 0;

// If bare-LF line endings are desired, turn off EmitCrLf
// Otherwise CRLF line endings are emitted.
json.EmitCrLf := 0;

// Emit the formatted JSON:
Memo1.Lines.Add(json.Emit());
end;