C
C
Understanding JSON Array vs JSON Object
See more JSON Examples
This example explains the difference between a JSON Array and a JSON Object. A JSON Array begins with "[" and ends with "]", whereas a JSON Object begins with "{" and ends with "}".Elements contained in a JSON array are accessed by index, whereas elements in a JSON object are typically accessed by name (but can also be accessed by index).
Chilkat C Downloads
#include <C_CkJsonArray.h>
#include <C_CkJsonObject.h>
void ChilkatSample(void)
{
BOOL success;
const char *strJsonArray;
HCkJsonArray jsonA;
const char *strJsonObj;
HCkJsonObject jsonO;
success = FALSE;
// A JSON array should be loaded into a Chilkat JSON array,
// whereas a JSON object should be loaded into a Chilkat JSON object.
// A JSON array may contain objects, and a JSON object may contains arrays, but
// it is the top-level (outermost) element that defines whether the JSON
// document is an array or an object.
// An array begins and ends with "[" ... "]"
// An object begins and ends with "{" ... "}"
// For example, an array containing 2 objects:
strJsonArray = "[ { \"name\": \"Bill\" }, { \"name\": \"Ted\" } ]";
// Load it into a JSON array.
jsonA = CkJsonArray_Create();
success = CkJsonArray_Load(jsonA,strJsonArray);
printf("number of array elements: %d\n",CkJsonArray_getSize(jsonA));
// This is an object containing an array:
strJsonObj = "{ \"characters\": [ \"Bill\", \"Ted\" ] }";
// Load it into a JSON object.
jsonO = CkJsonObject_Create();
success = CkJsonObject_Load(jsonO,strJsonObj);
printf("number of object members: %d\n",CkJsonObject_getSize(jsonO));
CkJsonArray_Dispose(jsonA);
CkJsonObject_Dispose(jsonO);
}