我有一个简单NSDictionary
的方法,我试图通过返回的 JSON 填充来自外部站点的数据。返回的 JSON 很好,但我无法获取特定键的实际数据。
这是打印到控制台的 JSON 数据。
这是我的 JSON 数据:
(
{
CategoryID = 12345;
CategoryName = "Baked Goods";
},
{
CategoryID = 12346;
CategoryName = Beverages;
},
{
CategoryID = 12347;
CategoryName = "Dried Goods";
},
{
CategoryID = 12348;
CategoryName = "Frozen Fruit & Vegetables";
},
{
CategoryID = 12349;
CategoryName = Fruit;
},
{
CategoryID = 12340;
CategoryName = "Purees & Soups";
},
{
CategoryID = 12341;
CategoryName = Salad;
},
{
CategoryID = 12342;
CategoryName = "Snack Items";
},
{
CategoryID = 12343;
CategoryName = Vegetables;
}
)
我得到的错误是:
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[__NSCFArray enumerateKeysAndObjectsUsingBlock:]:无法识别的选择器发送到实例 0x6884000”
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
NSError *error = nil;
// Get the JSON data from the website
NSDictionary *categories = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
if (categories.count > 0){
NSLog(@"This is my JSON data %@", categories);
[categories enumerateKeysAndObjectsUsingBlock: ^(__strong id key, __strong id obj, BOOL *stop) {
NSLog(@"Key = %@, Object For Key = %@", key, obj); }];
}
我不确定为什么会发生这种情况,但我确定这很简单,就像我使用了不正确的对象或其他东西一样。
帮助表示赞赏。