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) Sort JSON Object by Member Key NameSee more JSON ExamplesDemonstrates how to sort the members of a JSON object by the key name. IMPORTANT: This example requires a pre-release for the next version of Chilkat after the current v9.5.0.99 release. Contact info@chilkatsoft.com if you wish to get a pre-release. However, pre-releases of .NET Core (hosted on NuGet) and Node.js will not be possible.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var json: HCkJsonObject; ascending: Boolean; caseSensitive: Boolean; jsonAbc: HCkJsonObject; begin json := CkJsonObject_Create(); CkJsonObject_UpdateString(json,'xyz','1234'); CkJsonObject_UpdateString(json,'abc.xyz','1234'); CkJsonObject_UpdateString(json,'abc.def','1234'); CkJsonObject_UpdateString(json,'abc.aaa','1234'); CkJsonObject_UpdateString(json,'ghi','1234'); CkJsonObject_UpdateString(json,'nmo','1234'); CkJsonObject_putEmitCompact(json,False); Memo1.Lines.Add(CkJsonObject__emit(json)); // This is our initial JSON: // { // "xyz": "1234", // "abc": { // "xyz": "1234", // "def": "1234", // "aaa": "1234" // }, // "ghi": "1234", // "nmo": "1234" // } // Sort the top-level JSON object by key. ascending := True; caseSensitive := True; CkJsonObject_Sort(json,ascending,caseSensitive); // Look at the sorted JSON.. Memo1.Lines.Add(CkJsonObject__emit(json)); // { // "abc": { // "xyz": "1234", // "def": "1234", // "aaa": "1234" // }, // "ghi": "1234", // "nmo": "1234", // "xyz": "1234" // } // Now sort the members of the "abc" object.. jsonAbc := CkJsonObject_ObjectOf(json,'abc'); CkJsonObject_Sort(jsonAbc,ascending,caseSensitive); CkJsonObject_Dispose(jsonAbc); // Now look at the JSON with the members under "abc" also sorted.. Memo1.Lines.Add(CkJsonObject__emit(json)); // { // "abc": { // "aaa": "1234", // "def": "1234", // "xyz": "1234" // }, // "ghi": "1234", // "nmo": "1234", // "xyz": "1234" // } CkJsonObject_Dispose(json); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.