Perl Requires Chilkat v11.0.0+
Chilkat2 Perl
Swap JSON Objects
See more JSON Examples
Demonstrates how to swap two JSON objects within a JSON document.Chilkat Perl Downloads
use strict;
use warnings;
use Chilkat2;
my $json = Chilkat2::JsonObject->new;
$json->EmitCompact(0);
# 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"
# }
# }
my $success = $json->LoadFile('qa_data/json/people.json');
if (!$success) {
print $json->LastErrorText, "\n";
exit;
}
# Swap the positions of Jon and Sara.
my $index1 = $json->IndexOf('Jon');
my $index2 = $json->IndexOf('Sara');
$json->Swap($index1, $index2);
# We have this now:
print $json->Emit(), "\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:
my $jsonSara = Chilkat2::JsonObject->new;
$json->ObjectOf2('Sara', $jsonSara);
$index1 = $jsonSara->IndexOf('DOB');
$index2 = $jsonSara->IndexOf('country');
$jsonSara->Swap($index1, $index2);
# We now have this:
print $json->Emit(), "\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"
# }
# }