Lianja
Lianja
Swap JSON Objects
See more JSON Examples
Demonstrates how to swap two JSON objects within a JSON document.Chilkat Lianja Downloads
llSuccess = .F.
loJson = createobject("CkJsonObject")
loJson.EmitCompact = .F.
// 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"
// }
// }
llSuccess = loJson.LoadFile("qa_data/json/people.json")
if (llSuccess = .F.) then
? loJson.LastErrorText
release loJson
return
endif
// Swap the positions of Jon and Sara.
lnIndex1 = loJson.IndexOf("Jon")
lnIndex2 = loJson.IndexOf("Sara")
loJson.Swap(lnIndex1,lnIndex2)
// We have this now:
? loJson.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:
loJsonSara = createobject("CkJsonObject")
loJson.ObjectOf2("Sara",loJsonSara)
lnIndex1 = loJsonSara.IndexOf("DOB")
lnIndex2 = loJsonSara.IndexOf("country")
loJsonSara.Swap(lnIndex1,lnIndex2)
// We now have this:
? loJson.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"
// }
// }
release loJson
release loJsonSara