我有如下的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

10-08 11:03