Sample code for 30+ languages & platforms
PowerShell Requires Chilkat v11.0.0+

Swap JSON Objects

See more JSON Examples

Demonstrates how to swap two JSON objects within a JSON document.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

$json = New-Object Chilkat.JsonObject
$json.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 -eq $false) {
    $($json.LastErrorText)
    exit
}

#  Swap the positions of Jon and Sara.
$index1 = $json.IndexOf("Jon")
$index2 = $json.IndexOf("Sara")
$json.Swap($index1,$index2)

#  We have this now:
$($json.Emit())

#  {
#    "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:

$jsonSara = New-Object Chilkat.JsonObject
$json.ObjectOf2("Sara",$jsonSara)

$index1 = $jsonSara.IndexOf("DOB")
$index2 = $jsonSara.IndexOf("country")
$jsonSara.Swap($index1,$index2)

#  We now have this:
$($json.Emit())

#  {
#    "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"
#    }
#  }