Sample code for 30+ languages & platforms
Unicode 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 Unicode C Downloads

Unicode C
#include <C_CkJsonObjectW.h>

void ChilkatSample(void)
    {
    HCkJsonObjectW 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 = CkJsonObjectW_Create();
    CkJsonObjectW_UpdateBool(json,L"accountEnabled",TRUE);
    CkJsonObjectW_putI(json,0);
    CkJsonObjectW_UpdateString(json,L"assignedLicenses[i].disabledPlans[0]",L"bea13e0c-3828-4daa-a392-28af7ff61a0f");
    CkJsonObjectW_UpdateString(json,L"assignedLicenses[i].skuId",L"skuId-value");
    CkJsonObjectW_UpdateString(json,L"assignedPlans[i].assignedDateTime",L"datetime-value");
    CkJsonObjectW_UpdateString(json,L"assignedPlans[i].capabilityStatus",L"capabilityStatus-value");
    CkJsonObjectW_UpdateString(json,L"assignedPlans[i].service",L"service-value");
    CkJsonObjectW_UpdateString(json,L"assignedPlans[i].servicePlanId",L"bea13e0c-3828-4daa-a392-28af7ff61a0f");
    CkJsonObjectW_UpdateString(json,L"businessPhones[i]",L"businessPhones-value");
    CkJsonObjectW_UpdateString(json,L"city",L"city-value");
    CkJsonObjectW_UpdateString(json,L"companyName",L"companyName-value");

    CkJsonObjectW_putEmitCompact(json,FALSE);
    wprintf(L"%s\n",CkJsonObjectW_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"
    //  }


    CkJsonObjectW_Dispose(json);

    }