Sample code for 30+ languages & platforms
Visual FoxPro

Build JSON with Mixture of Arrays and Objects

See more JSON Examples

Another example showing how to build JSON containing a mixture of arrays and objects.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL loJson

* We want to build the following JSON:

* { 
*   "accountEnabled": true,
*   "assignedLicenses": [
*     { 
*       "disabledPlans": [ "bea13e0c-3828-4daa-a392-28af7ff61a0f" ],
*       "skuId": "skuId-value"
*     }
*   ],
*   "assignedPlans": [
*     { 
*       "assignedDateTime": "datetime-value",
*       "capabilityStatus": "capabilityStatus-value",
*       "service": "service-value",
*       "servicePlanId": "bea13e0c-3828-4daa-a392-28af7ff61a0f"
*     }
*   ],
*   "businessPhones": [
*     "businessPhones-value"
*   ],
*   "city": "city-value",
*   "companyName": "companyName-value"
* }

loJson = CreateObject('Chilkat.JsonObject')
loJson.UpdateBool("accountEnabled",1)
loJson.I = 0
loJson.UpdateString("assignedLicenses[i].disabledPlans[0]","bea13e0c-3828-4daa-a392-28af7ff61a0f")
loJson.UpdateString("assignedLicenses[i].skuId","skuId-value")
loJson.UpdateString("assignedPlans[i].assignedDateTime","datetime-value")
loJson.UpdateString("assignedPlans[i].capabilityStatus","capabilityStatus-value")
loJson.UpdateString("assignedPlans[i].service","service-value")
loJson.UpdateString("assignedPlans[i].servicePlanId","bea13e0c-3828-4daa-a392-28af7ff61a0f")
loJson.UpdateString("businessPhones[i]","businessPhones-value")
loJson.UpdateString("city","city-value")
loJson.UpdateString("companyName","companyName-value")

loJson.EmitCompact = 0
? loJson.Emit()

* Output:

* { 
*   "accountEnabled": true,
*   "assignedLicenses": [
*     { 
*       "disabledPlans": [
*         "bea13e0c-3828-4daa-a392-28af7ff61a0f"
*       ],
*       "skuId": "skuId-value"
*     }
*   ],
*   "assignedPlans": [
*     { 
*       "assignedDateTime": "datetime-value",
*       "capabilityStatus": "capabilityStatus-value",
*       "service": "service-value",
*       "servicePlanId": "bea13e0c-3828-4daa-a392-28af7ff61a0f"
*     }
*   ],
*   "businessPhones": [
*     "businessPhones-value"
*   ],
*   "city": "city-value",
*   "companyName": "companyName-value"
* }

RELEASE loJson