Swift
Swift
Loading and Parsing a JSON Array
See more JSON Examples
A JSON array is JSON that begins with "[" and ends with "]". For example, this is a JSON array that contains 3 JSON objects.
[{"name":"jack"},{"name":"john"},{"name":"joe"}]
A JSON object, however, is JSON that begins with "{" and ends with "}". For example, this JSON is an object that contains an array.
{"pets":[{"name":"jack"},{"name":"john"},{"name":"joe"}]}
This example shows how loading a JSON array is different than loading a JSON object.
Chilkat Swift Downloads
func chilkatTest() {
var strJsonArray: String? = "[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]"
var strJsonObject: String? = "{\"pets\":[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]}"
// A JSON array must be loaded using JsonArray:
let jsonArray = CkoJsonArray()!
jsonArray.load(jsonArray: strJsonArray)
// Examine the values:
var i: Int = 0
while i < jsonArray.size.intValue {
var jsonObj: CkoJsonObject? = jsonArray.object(at: i)
print("\(i): \(jsonObj!.string(of: "name")!)")
jsonObj = nil
i = i + 1
}
// Output is:
// 0: jack
// 1: john
// 2: joe
// A JSON object must be loaded using JsonObject
let jsonObject = CkoJsonObject()!
jsonObject.load(json: strJsonObject)
// Examine the values:
i = 0
var numPets: Int = jsonObject.size(ofArray: "pets").intValue
while i < numPets {
jsonObject.i = i
print("\(i): \(jsonObject.string(of: "pets[i].name")!)")
i = i + 1
}
// Output is:
// 0: jack
// 1: john
// 2: joe
}