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
(Visual FoxPro) Insert JSON Array into another JSON ObjectSee more JSON ExamplesDemonstrates how to insert a JSON array into a JSON object.
LOCAL loJsonA LOCAL loJsonB LOCAL loJsonUsersDest LOCAL loJsonUsersSrc * Imagine we have two separate JSON objects. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJsonA = CreateObject('Chilkat.JsonObject') loJsonA.UpdateString("ciphertext","encryptedData") loJsonA.UpdateInt("status",200) loJsonA.UpdateString("error","errorMsg") loJsonA.EmitCompact = 0 ? loJsonA.Emit() * jsonA contains: * { * "ciphertext": "encryptedData", * "status": 200, * "error": "errorMsg" * } * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJsonB = CreateObject('Chilkat.JsonObject') loJsonB.UpdateString("users[0].role","Surgeon") loJsonB.UpdateNewArray("users[0].sub_roles") loJsonB.UpdateBool("users[0].viewable_for_sharing",1) loJsonB.UpdateInt("users[0].eula_create_date",123) loJsonB.UpdateString("users[1].role","Support") loJsonB.UpdateString("users[1].sub_roles[0]","Tech") loJsonB.UpdateString("users[1].sub_roles[1]","Service") loJsonB.UpdateBool("users[1].viewable_for_sharing",1) loJsonB.UpdateInt("users[1].eula_create_date",123) loJsonB.EmitCompact = 0 ? loJsonB.Emit() * jsonB contains: * { * "users": [ * { * "role": "Surgeon", * "sub_roles": [], * "viewable_for_sharing": true, * "eula_create_date": 1649108922482 * }, * { * "role": "Support", * "sub_roles": [ * "Tech", * "Service" * ], * "viewable_for_sharing": true, * "eula_create_date": 1649108951523 * } * ] * } * Let's say we want to insert jsonB into jsonA to get this: * { * "ciphertext": "encryptedData", * "status": 200, * "error": "errorMsg", * "users": [ * { * "role": "Surgeon", * "sub_roles": [], * "viewable_for_sharing": true, * "eula_create_date": 1649108922482 * }, * { * "role": "Support", * "sub_roles": [ * "Tech", * "Service" * ], * "viewable_for_sharing": true, * "eula_create_date": 1649108951523 * } * ] * } * First add an empty array at the desired location (-1 means append to end). loJsonA.AddArrayAt(-1,"users") * The destination is the empty "users" array, the source is the populated "users" array in jsonB. loJsonUsersDest = loJsonA.ArrayOf("users") loJsonUsersSrc = loJsonB.ArrayOf("users") * Copy the array items from source to dest loJsonUsersDest.AppendArrayItems(loJsonUsersSrc) RELEASE loJsonUsersDest RELEASE loJsonUsersSrc ? loJsonA.Emit() * The end result is this: * { * "ciphertext": "encryptedData", * "status": 200, * "error": "errorMsg", * "users": [ * { * "role": "Surgeon", * "sub_roles": [ * ], * "viewable_for_sharing": true, * "eula_create_date": 123 * }, * { * "role": "Support", * "sub_roles": [ * "Tech", * "Service" * ], * "viewable_for_sharing": true, * "eula_create_date": 123 * } * ] * } RELEASE loJsonA RELEASE loJsonB |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.