Sample code for 30+ languages & platforms
C

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 C Downloads

C
#include <C_CkJsonObject.h>

void ChilkatSample(void)
    {
    HCkJsonObject json;

    //  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"
    //  }

    json = CkJsonObject_Create();
    CkJsonObject_UpdateBool(json,"accountEnabled",TRUE);
    CkJsonObject_putI(json,0);
    CkJsonObject_UpdateString(json,"assignedLicenses[i].disabledPlans[0]","bea13e0c-3828-4daa-a392-28af7ff61a0f");
    CkJsonObject_UpdateString(json,"assignedLicenses[i].skuId","skuId-value");
    CkJsonObject_UpdateString(json,"assignedPlans[i].assignedDateTime","datetime-value");
    CkJsonObject_UpdateString(json,"assignedPlans[i].capabilityStatus","capabilityStatus-value");
    CkJsonObject_UpdateString(json,"assignedPlans[i].service","service-value");
    CkJsonObject_UpdateString(json,"assignedPlans[i].servicePlanId","bea13e0c-3828-4daa-a392-28af7ff61a0f");
    CkJsonObject_UpdateString(json,"businessPhones[i]","businessPhones-value");
    CkJsonObject_UpdateString(json,"city","city-value");
    CkJsonObject_UpdateString(json,"companyName","companyName-value");

    CkJsonObject_putEmitCompact(json,FALSE);
    printf("%s\n",CkJsonObject_emit(json));

    //  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"
    //  }


    CkJsonObject_Dispose(json);

    }