C++
C++
Swap JSON Objects
See more JSON Examples
Demonstrates how to swap two JSON objects within a JSON document.Chilkat C++ Downloads
#include <CkJsonObject.h>
void ChilkatSample(void)
{
bool success = false;
CkJsonObject json;
json.put_EmitCompact(false);
// Load the following JSON:
// {
// "petter": {
// "DOB": "26/02/1986",
// "gender": "male",
// "country": "US"
// },
// "Sara": {
// "DOB": "13/05/1982",
// "gender": "female",
// "country": "FR"
// },
// "Jon": {
// "DOB": "19/03/1984",
// "gender": "male",
// "country": "UK"
// }
// }
success = json.LoadFile("qa_data/json/people.json");
if (success == false) {
std::cout << json.lastErrorText() << "\r\n";
return;
}
// Swap the positions of Jon and Sara.
int index1 = json.IndexOf("Jon");
int index2 = json.IndexOf("Sara");
json.Swap(index1,index2);
// We have this now:
std::cout << json.emit() << "\r\n";
// {
// "petter": {
// "DOB": "26/02/1986",
// "gender": "male",
// "country": "US"
// },
// "Jon": {
// "DOB": "19/03/1984",
// "gender": "male",
// "country": "UK"
// },
// "Sara": {
// "DOB": "13/05/1982",
// "gender": "female",
// "country": "FR"
// }
// }
// To swap an inner member:
CkJsonObject jsonSara;
json.ObjectOf2("Sara",jsonSara);
index1 = jsonSara.IndexOf("DOB");
index2 = jsonSara.IndexOf("country");
jsonSara.Swap(index1,index2);
// We now have this:
std::cout << json.emit() << "\r\n";
// {
// "petter": {
// "DOB": "26/02/1986",
// "gender": "male",
// "country": "US"
// },
// "Jon": {
// "DOB": "19/03/1984",
// "gender": "male",
// "country": "UK"
// },
// "Sara": {
// "country": "FR",
// "gender": "female",
// "DOB": "13/05/1982"
// }
// }
}