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) Check if Integer Exists at JSON PathDemonstrates how to get an integer value at a JSON path, and how to check to see if it exists.
require 'chilkat' json = Chilkat::CkJsonObject.new() # First build simple JSON.. json.UpdateInt("test.abc",100) json.put_EmitCompact(false) print json.emit() + "\n"; # This is our JSON: # { # "test": { # "abc": 100, # } # } path = "test.notHere" # The call to IntOf will return 0, because it's not present. # But how do we know if it really was present, and the value was truly 0? val = json.IntOf(path) print "val = " + val.to_s() + "\n"; # We cannot use LastMethodSuccess because LastMethodSuccess only applies # to methods that: # - return a string # - return a new Chilkat object, binary bytes, or a date/time. # - returns a boolean status where true = success and false = failed. # - returns an integer where failure is defined by a return value less than zero. # The IntOf method fits none of these requirements, and therefore the LastMethodSuccess # is not a valid indicator.. wasFound = json.get_LastMethodSuccess() print "wasFound = " + wasFound.to_s() + " (not a valid indicator)" + "\n"; # Instead, if the returned value is 0, we can double-check to see if the member was truly there.. if (val == 0) wasFound = json.HasMember(path) print "wasFound = " + wasFound.to_s() + "\n"; if (wasFound == true) print "The value was present and is 0." + "\n"; else print "no member is present at test.notHere" + "\n"; end else print "val = " + val.to_s() + "\n"; end # Alternatively, you could check to see if the member exists beforehand.. if (json.HasMember(path) == true) print "val = " + json.IntOf(path).to_s() + "\n"; else print "no member at " + path + "\n"; end |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.