C++
C++
Load a JsonArray
See more JSON Examples
Demonstrates how to load a JsonArray.Note: This example requires Chilkat v9.5.0.64 or greater.
Chilkat C++ Downloads
#include <CkJsonArray.h>
#include <CkJsonObject.h>
void ChilkatSample(void)
{
// This example requires Chilkat v9.5.0.64 or greater.
// Loading into a new JSON array is simple and straightforward.
CkJsonArray a;
a.Load("[ 1,2,3,4 ]");
// Output: [1,2,3,4]
std::cout << a.emit() << "\r\n";
std::cout << "--------" << "\r\n";
// The JsonArray's Load and LoadSb methods have a peculiar behavior when
// it is already part of a JSON document. In this case, the JsonArray
// becomes detached, and the original document remains unchanged.
// This is intentional due to the nature of the internal implementation.
// For example:
CkJsonObject json;
json.Load("{ \"abc\": [ 1,2,3,4 ] }");
// Output: (json) {"abc":[1,2,3,4]}
std::cout << "(json) " << json.emit() << "\r\n";
std::cout << "--------" << "\r\n";
CkJsonArray *abc = json.ArrayOf("abc");
// When Load is called, abc becomes it's own document, and the original is not modified.
abc->Load("[ 5,6,7,8 ]");
// Output: (abc) [5,6,7,8]
std::cout << "(abc) " << abc->emit() << "\r\n";
std::cout << "--------" << "\r\n";
// Output: (json) {"abc":[1,2,3,4]}
std::cout << "(json) " << json.emit() << "\r\n";
std::cout << "--------" << "\r\n";
delete abc;
}