Ruby
Ruby
JSON: Nested Objects
See more JSON Examples
Here we have a JSON object that contains nested JSON objects. This example demonstrates how to access the contents of the nested objects.
{
"name": "donut",
"image":
{
"fname": "donut.jpg",
"w": 200,
"h": 200
},
"thumbnail":
{
"fname": "donutThumb.jpg",
"w": 32,
"h": 32
}
}
Chilkat Ruby Downloads
require 'chilkat'
success = false
json = Chilkat::CkJsonObject.new()
# This is the above JSON with whitespace chars removed (SPACE, TAB, CR, and LF chars).
# The presence of whitespace chars for pretty-printing makes no difference to the Load
# method.
jsonStr = "{\"name\": \"donut\",\"image\":{\"fname\": \"donut.jpg\",\"w\": 200,\"h\": 200},\"thumbnail\":{\"fname\": \"donutThumb.jpg\",\"w\": 32,\"h\": 32}}"
success = json.Load(jsonStr)
if (success == false)
print json.lastErrorText() + "\n";
exit
end
# Get the "image" object.
imageObj = Chilkat::CkJsonObject.new()
json.ObjectOf2("image",imageObj)
print "image: fname=" + imageObj.stringOf("fname") + ", width=" + imageObj.IntOf("w").to_s() + ", height=" +
imageObj.IntOf("h").to_s() + "\n";
# Get the "thumbnail" object.
thumbObj = Chilkat::CkJsonObject.new()
json.ObjectOf2("thumbnail",thumbObj)
print "thumbnail: fname=" + thumbObj.stringOf("fname") + ", width=" + thumbObj.IntOf("w").to_s() + ", height=" +
thumbObj.IntOf("h").to_s() + "\n";