Objective-C
Objective-C
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 Objective-C Downloads
#import <NSString.h>
#import <CkoJsonArray.h>
#import <CkoJsonObject.h>
NSString *strJsonArray = @"[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]";
NSString *strJsonObject = @"{\"pets\":[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]}";
// A JSON array must be loaded using JsonArray:
CkoJsonArray *jsonArray = [[CkoJsonArray alloc] init];
[jsonArray Load: strJsonArray];
// Examine the values:
int i = 0;
while (i < [jsonArray.Size intValue]) {
CkoJsonObject *jsonObj = [jsonArray ObjectAt: [NSNumber numberWithInt: i]];
NSLog(@"%d%@%@",i,@": ",[jsonObj StringOf: @"name"]);
i = i + 1;
}
// Output is:
// 0: jack
// 1: john
// 2: joe
// A JSON object must be loaded using JsonObject
CkoJsonObject *jsonObject = [[CkoJsonObject alloc] init];
[jsonObject Load: strJsonObject];
// Examine the values:
i = 0;
int numPets = [[jsonObject SizeOfArray: @"pets"] intValue];
while (i < numPets) {
jsonObject.I = [NSNumber numberWithInt: i];
NSLog(@"%d%@%@",i,@": ",[jsonObject StringOf: @"pets[i].name"]);
i = i + 1;
}
// Output is:
// 0: jack
// 1: john
// 2: joe