如何从NSData对象获取JSON对象数组[重复]

问题描述 投票:16回答:1

这个问题在这里已有答案:

所以我使用HTTP GET方法返回一个JSON对象数组,这些对象存储在NSData中。该数组如下所示:

[{"created_at":"2013-03-09T04:55:21Z","data_type":"image","id":5354,"latitude":37.785834,"longitude":-122.406417,"name":"tempObject","privacy":"public","radius":1000.0,"updated_at":"2013-03-09T04:55:21Z","user_id":101},{"created_at":"2013-03-10T20:57:08Z","data_type":"image","id":5364,"latitude":37.785834,"longitude":-122.406417,"name":"tempObject","privacy":"public","radius":1000.0,"updated_at":"2013-03-10T20:57:08Z","user_id":101}]

我将如何提取这些JSON对象并从NSData中迭代它们?

ios objective-c json swift nsdata
1个回答
71
投票

如果您使用的是iOS 5.0及更高版本,则可以执行以下操作:

Objective-C的:

NSError *error = nil;
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData:myNSData options:kNilOptions error:&error];

if (error != nil) {
    NSLog(@"Error parsing JSON.");
}
else {
    NSLog(@"Array: %@", jsonArray);
}

迅速:

do {
    let jsonArray = try JSONSerialization.jsonObject(with: myNSData, options:[])
    print("Array: \(jsonArray)")
}
catch {
    print("Error: \(error)")
}
© www.soinside.com 2019 - 2024. All rights reserved.