我通过使用单例客户端 (RestKit) 获得响应得到了这个 json 字符串。
[
{
"created_at":"Tue Apr 24 19:25:14 +0000 2012",
"id":132456,
},
{
"created_at":"Tue Apr 24 19:25:14 +0000 2012",
"id":13456,
},
]
我得到了这个结果
NSDictionary *results = [[response bodyAsString] JSONValue];
这是什么结果
(
{
"created_at" = "Tue Apr 24 19:25:14 +0000 2012";
"id"=132456;
}
{
"created_at" = "Tue Apr 24 19:25:14 +0000 2012";
"id"=132456;
}
)
作为 NSDictionary。
如您所见,我没有可用的 key 。如果是这样,我会编写这样的代码 NSMutableArray *block = [results objectForKey:@"key"];
。我试图为 objectForKey 放置和清空字符串,但它不起作用并给了我一个错误“objectForKey”。
问题: 如何在没有键的情况下解析每个 block 以将其放入数组中?
求助!谢谢!
最佳答案
这实际上是一个包含 2 个字典的数组。更改您的代码:
NSDictionary *results = [[response bodyAsString] JSONValue];
到
NSArray *results = [[response bodyAsString] JSONValue];
然后,如果需要,您可以使用 For-In 从该数组中获取所有字典。 key 似乎是 id 属性。
所以对于数组中的第一个:
NSDictionary *dictionary = (NSDictionary *)[results objectAtIndex:0];
NSInteger myKey = [[dictionary valueForKey@"id"] intValue];
关于objective-c - 没有 key 的 SBJson 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10751259/