我有如下的JSON字符串:
{"status": "ok", "secret": "d2d388eb3a24aaacb365597f69a2bf97", "client": "100006", "expires": "1345721042"}
对于解析JSON对象,我正在使用SBJSON库。
这是我用于从JSON对象检索数据的代码:
SBJsonParser *jsonParser = [[SBJsonParser alloc] init];
NSError *error = nil;
NSArray *jsonObjects = [jsonParser objectWithString:[request responseString] error:&error];
但是当我尝试进入NSLog我的字典时,我没有配对键值对象,而只有键,例如:状态,机密,客户端和过期。
如何使用SBJSON库获取具有键值对象的NSDictionary
{
status = "ok";
secret = "d2d388eb3a24aaacb365597f69a2bf97";
}
最佳答案
这是因为要将解析结果设置为NSArray对象。您应该将JSONParser的结果存储为NSDictionary对象,以将其存储为键值对
NSDictionary *jsonObjects = [jsonParser objectWithString:[request responseString] error:&error];
然后,您可以像这样访问它们:
NSString *status = [jsonObjects objectForKey:@"status"];
NSString *secret = [jsonObjects objectForKey:@"secret"];
// and so on