Swift
Swift
Swap JSON Objects
See more JSON Examples
Demonstrates how to swap two JSON objects within a JSON document.Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
let json = CkoJsonObject()!
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(path: "qa_data/json/people.json")
if success == false {
print("\(json.lastErrorText!)")
return
}
// Swap the positions of Jon and Sara.
var index1: Int = json.index(of: "Jon").intValue
var index2: Int = json.index(of: "Sara").intValue
json.swap(index1: index1, index2: index2)
// We have this now:
print("\(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:
let jsonSara = CkoJsonObject()!
json.objectOf2(jsonPath: "Sara", jsonObj: jsonSara)
index1 = jsonSara.index(of: "DOB").intValue
index2 = jsonSara.index(of: "country").intValue
jsonSara.swap(index1: index1, index2: index2)
// We now have this:
print("\(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"
// }
// }
}