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
(Ruby) Insert JSON Array into another JSON ObjectSee more JSON ExamplesDemonstrates how to insert a JSON array into a JSON object.
require 'chilkat' # Imagine we have two separate JSON objects. jsonA = Chilkat::CkJsonObject.new() jsonA.UpdateString("ciphertext","encryptedData") jsonA.UpdateInt("status",200) jsonA.UpdateString("error","errorMsg") jsonA.put_EmitCompact(false) print jsonA.emit() + "\n"; # jsonA contains: # { # "ciphertext": "encryptedData", # "status": 200, # "error": "errorMsg" # } jsonB = Chilkat::CkJsonObject.new() jsonB.UpdateString("users[0].role","Surgeon") jsonB.UpdateNewArray("users[0].sub_roles") jsonB.UpdateBool("users[0].viewable_for_sharing",true) jsonB.UpdateInt("users[0].eula_create_date",123) jsonB.UpdateString("users[1].role","Support") jsonB.UpdateString("users[1].sub_roles[0]","Tech") jsonB.UpdateString("users[1].sub_roles[1]","Service") jsonB.UpdateBool("users[1].viewable_for_sharing",true) jsonB.UpdateInt("users[1].eula_create_date",123) jsonB.put_EmitCompact(false) print jsonB.emit() + "\n"; # 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). jsonA.AddArrayAt(-1,"users") # The destination is the empty "users" array, the source is the populated "users" array in jsonB. # jsonUsersDest is a CkJsonArray jsonUsersDest = jsonA.ArrayOf("users") # jsonUsersSrc is a CkJsonArray jsonUsersSrc = jsonB.ArrayOf("users") # Copy the array items from source to dest jsonUsersDest.AppendArrayItems(jsonUsersSrc) print jsonA.emit() + "\n"; # 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 # } # ] # } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.