Sample code for 30+ languages & platforms
Visual FoxPro

JSON: Access Array Values

See more JSON Examples

Demonstrates how to access values in a JSON array.

Chilkat Visual FoxPro Downloads

Visual FoxPro
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