Sample code for 30+ languages & platforms
PowerBuilder

JSON Iterate Members

See more JSON Examples

Demonstrates how to loop over the immediate members of a JSON object.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Json
string ls_JsonStr
integer li_NumMembers
integer i
string ls_Name
string ls_Value
integer li_IValue

li_Success = 0

loo_Json = create oleobject
li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject")
if li_rc < 0 then
    destroy loo_Json
    MessageBox("Error","Connecting to COM object failed")
    return
end if

ls_JsonStr = "{ ~"id~": 1, ~"name~": ~"A green door~", ~"tags~": [~"home~", ~"green~"], ~"price~": 125 }"

li_Success = loo_Json.Load(ls_JsonStr)
if li_Success <> 1 then
    Write-Debug loo_Json.LastErrorText
    destroy loo_Json
    return
end if

li_NumMembers = loo_Json.Size

for i = 0 to li_NumMembers - 1

    ls_Name = loo_Json.NameAt(i)
    ls_Value = loo_Json.StringAt(i)

    Write-Debug ls_Name + ": " + ls_Value

    li_IValue = loo_Json.IntAt(i)
    Write-Debug ls_Name + " as integer: " + string(li_IValue)

next

// Note: The StringAt method returns the value as a string regardless of the type.
// If the value is a JSON array (such as for ["home", "green"]), then the JSON encoding
// of the entire array is returned.

// The IntAt method returns the value as an integer.  If the value does not convert to 
// an integer, then 0 is returned


destroy loo_Json