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
(Tcl) Insert JSON Array into another JSON ObjectSee more JSON ExamplesDemonstrates how to insert a JSON array into a JSON object.
load ./chilkat.dll # Imagine we have two separate JSON objects. set jsonA [new_CkJsonObject] CkJsonObject_UpdateString $jsonA "ciphertext" "encryptedData" CkJsonObject_UpdateInt $jsonA "status" 200 CkJsonObject_UpdateString $jsonA "error" "errorMsg" CkJsonObject_put_EmitCompact $jsonA 0 puts [CkJsonObject_emit $jsonA] # jsonA contains: # { # "ciphertext": "encryptedData", # "status": 200, # "error": "errorMsg" # } set jsonB [new_CkJsonObject] CkJsonObject_UpdateString $jsonB "users[0].role" "Surgeon" CkJsonObject_UpdateNewArray $jsonB "users[0].sub_roles" CkJsonObject_UpdateBool $jsonB "users[0].viewable_for_sharing" 1 CkJsonObject_UpdateInt $jsonB "users[0].eula_create_date" 123 CkJsonObject_UpdateString $jsonB "users[1].role" "Support" CkJsonObject_UpdateString $jsonB "users[1].sub_roles[0]" "Tech" CkJsonObject_UpdateString $jsonB "users[1].sub_roles[1]" "Service" CkJsonObject_UpdateBool $jsonB "users[1].viewable_for_sharing" 1 CkJsonObject_UpdateInt $jsonB "users[1].eula_create_date" 123 CkJsonObject_put_EmitCompact $jsonB 0 puts [CkJsonObject_emit $jsonB] # 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). CkJsonObject_AddArrayAt $jsonA -1 "users" # The destination is the empty "users" array, the source is the populated "users" array in jsonB. # jsonUsersDest is a CkJsonArray set jsonUsersDest [CkJsonObject_ArrayOf $jsonA "users"] # jsonUsersSrc is a CkJsonArray set jsonUsersSrc [CkJsonObject_ArrayOf $jsonB "users"] # Copy the array items from source to dest CkJsonArray_AppendArrayItems $jsonUsersDest $jsonUsersSrc delete_CkJsonArray $jsonUsersDest delete_CkJsonArray $jsonUsersSrc puts [CkJsonObject_emit $jsonA] # 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 # } # ] # } delete_CkJsonObject $jsonA delete_CkJsonObject $jsonB |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.