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