我正在尝试解析由 RESTful Web API 返回的 JSON 数组,该数组看起来类似于以下内容(使用 jsonviewer,json 作为数组中的一堆字典返回):
[{
"date": "2011-03-21",
"meal": "BREAKFAST",
"category": "BREAKFAST BAKERY",
"recipe": "213012",
"name": "Aesops Bagels",
"portion": "1",
"unit": "each"},
我正在尝试获取“名称”信息,然后将其存储到 tableview 中。这是我用来完成此操作的代码:
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSArray *allDataArray = [NSJSONSerialization JSONObjectWithData:webData
options:0
error:nil];
for (NSDictionary *diction in allDataArray) {
NSDictionary *menuItem = [diction objectForKey:@"menuItem"];
NSString *name = [menuItem objectForKey:@"name"];
[array addObject:name];
}
[[self MyTableView]reloadData];
}
我得到的错误是:
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil”
所以我很确定在 for 循环上方的行中发生了错误,这导致数组尝试将其nil
作为一个值。但是任何帮助弄清楚出了什么问题/如何成功解析这个 json 将不胜感激。我对 json、xcode 和 iOS 都很陌生,所以如果我做了任何特别愚蠢的事情,我深表歉意。