Visual FoxPro
Visual FoxPro
JSON: Access Array Values
See more JSON Examples
Demonstrates how to access values in a JSON array.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loJson
LOCAL lcJsonStr
LOCAL loTagsArray
LOCAL lnArraySize
LOCAL i
LOCAL lcSValue
LOCAL lnIValue
lnSuccess = 0
loJson = CreateObject('Chilkat.JsonObject')
lcJsonStr = '{ "id": 1, "name": "A green door", "tags": ["home", 22, "green"], "price": 125 }'
lnSuccess = loJson.Load(lcJsonStr)
IF (lnSuccess <> 1) THEN
? loJson.LastErrorText
RELEASE loJson
CANCEL
ENDIF
* Get the "tags" array, which contains "home", 22, "green"
loTagsArray = loJson.ArrayOf("tags")
IF (loJson.LastMethodSuccess = 0) THEN
? "tags member not found."
RELEASE loJson
CANCEL
ENDIF
* Get the value at each array index.
* Output will be:
* [0] = home
* [0] as integer = 0
* [1] = 22
* [1] as integer = 22
* [2] = green
* [2] as integer = 0
lnArraySize = loTagsArray.Size
FOR i = 0 TO lnArraySize - 1
lcSValue = loTagsArray.StringAt(i)
? "[" + STR(i) + "] = " + lcSValue
lnIValue = loTagsArray.IntAt(i)
? "[" + STR(i) + "] as integer = " + STR(lnIValue)
NEXT
RELEASE loTagsArray
* Note: The StringAt method returns the value as a string regardless of the type.
* The IntAt method returns the value as an integer. If the value does not convert to
* an integer, then 0 is returned
RELEASE loJson