Sample code for 30+ languages & platforms
Delphi DLL

Create a JSON Array of Objects

See more JSON Examples

Demonstrates how to create a JSON array of objects.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, JsonArray, JsonObject;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
arr: HCkJsonArray;
obj: HCkJsonObject;

begin
success := False;

arr := CkJsonArray_Create();

obj := CkJsonObject_Create();

// Create a new and empty JSON object in the 1st position of the JSON array 
// and return the reference in the last argument.
CkJsonArray_AddObjectAt2(arr,0,obj);
CkJsonObject_UpdateString(obj,'Name','Otto');
CkJsonObject_UpdateInt(obj,'Age',29);
CkJsonObject_UpdateBool(obj,'Married',False);

// Create a new and empty JSON object in the 2nd position of the JSON array 
// and return the reference in the last argument.
CkJsonArray_AddObjectAt2(arr,1,obj);
CkJsonObject_UpdateString(obj,'Name','Connor');
CkJsonObject_UpdateInt(obj,'Age',43);
CkJsonObject_UpdateBool(obj,'Married',True);

// Create a new and empty JSON object in the 3rd position of the JSON array 
// and return the reference in the last argument.
CkJsonArray_AddObjectAt2(arr,2,obj);
CkJsonObject_UpdateString(obj,'Name','Ramona');
CkJsonObject_UpdateInt(obj,'Age',34);
CkJsonObject_UpdateBool(obj,'Married',True);

// Examine what we have:
CkJsonArray_putEmitCompact(arr,False);
Memo1.Lines.Add(CkJsonArray__emit(arr));

// The output is:

// [
//   {
//     "Name": "Otto",
//     "Age": 29,
//     "Married": false
//   },
//   {
//     "Name": "Connor",
//     "Age": 43,
//     "Married": true
//   },
//   {
//     "Name": "Ramona",
//     "Age": 34,
//     "Married": true
//   }
// ]

CkJsonArray_Dispose(arr);
CkJsonObject_Dispose(obj);

end;