Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) Iterate over JSON Array containing JSON ObjectsDemonstrates how to load a JSON array and iterate over the JSON objects.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, JsonArray, StringBuilder, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var sbJsonArray: HCkStringBuilder; success: Boolean; arr: HCkJsonArray; tagId: Integer; tagDescription: PWideChar; isPublic: Boolean; i: Integer; count: Integer; obj: HCkJsonObject; begin // Loads the following JSON array and iterates over the objects: // // [ // {"tagId":95,"tagDescription":"hola 1","isPublic":true}, // {"tagId":98,"tagDescription":"hola 1","isPublic":true}, // {"tagId":101,"tagDescription":"hola 1","isPublic":true}, // {"tagId":104,"tagDescription":"hola 1","isPublic":true}, // {"tagId":107,"tagDescription":"hola 1","isPublic":true}, // {"tagId":110,"tagDescription":"hola 1","isPublic":true}, // {"tagId":113,"tagDescription":"hola 1","isPublic":true}, // {"tagId":114,"tagDescription":"hola 2","isPublic":true}, // {"tagId":111,"tagDescription":"hola 2","isPublic":true}, // {"tagId":108,"tagDescription":"hola 2","isPublic":true}, // {"tagId":105,"tagDescription":"hola 2","isPublic":true}, // {"tagId":102,"tagDescription":"hola 2","isPublic":true}, // {"tagId":99,"tagDescription":"hola 2","isPublic":true}, // {"tagId":96,"tagDescription":"hola 2","isPublic":true}, // {"tagId":97,"tagDescription":"hola 3","isPublic":true}, // {"tagId":100,"tagDescription":"hola 3","isPublic":true}, // {"tagId":103,"tagDescription":"hola 3","isPublic":true}, // {"tagId":106,"tagDescription":"hola 3","isPublic":true}, // {"tagId":109,"tagDescription":"hola 3","isPublic":true}, // {"tagId":112,"tagDescription":"hola 3","isPublic":true}, // {"tagId":115,"tagDescription":"hola 3","isPublic":true}, // {"tagId":93,"tagDescription":"new tag","isPublic":true}, // {"tagId":94,"tagDescription":"new tag","isPublic":true}, // {"tagId":89,"tagDescription":"tag 1","isPublic":true}, // {"tagId":90,"tagDescription":"tag 2","isPublic":true}, // {"tagId":91,"tagDescription":"tag private 1","isPublic":false}, // {"tagId":92,"tagDescription":"tag private 2","isPublic":false} // ] // Load a file containing the above JSON.. sbJsonArray := CkStringBuilder_Create(); success := CkStringBuilder_LoadFile(sbJsonArray,'qa_data/json/arraySample.json','utf-8'); arr := CkJsonArray_Create(); success := CkJsonArray_LoadSb(arr,sbJsonArray); i := 0; count := CkJsonArray_getSize(arr); while i < count do begin obj := CkJsonArray_ObjectAt(arr,i); tagId := CkJsonObject_IntOf(obj,'tagId'); tagDescription := CkJsonObject__stringOf(obj,'tagDescription'); isPublic := CkJsonObject_BoolOf(obj,'isPublic'); Memo1.Lines.Add('tagId: ' + IntToStr(tagId)); Memo1.Lines.Add('tagDescription: ' + tagDescription); Memo1.Lines.Add('isPublic: ' + IntToStr(Ord(isPublic))); Memo1.Lines.Add('--'); CkJsonObject_Dispose(obj); i := i + 1; end; CkStringBuilder_Dispose(sbJsonArray); CkJsonArray_Dispose(arr); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.