尝试复制时JSONKit无效参数

时间:2013-02-12 00:36:30

标签: iphone ios6 jsonkit

我正在使用JSONKit将JSON数据解析为NSMutableDictionary。

NSString *str = [[NSString alloc] initWithData:self.responseData encoding:NSUTF8StringEncoding];

NSMutableDictionary *jsonResponse = [self.responseData objectFromJSONData];

NSMutableDictionary *newData = [[NSMutableDictionary alloc] init];
[newData addEntriesFromDictionary:[jsonResponse mutableCopy]];

当我这样做时,我收到此错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSMutableDictionary addEntriesFromDictionary:]: dictionary argument is not an NSDictionary'

我正在试图找出造成这个问题的原因。我知道jsonResponse是我其他经历中JKArray的一个对象。

我需要帮助。 感谢。

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

id object = [self.responseData objectFromJSONData];
NSLog(@"%@", [object class]);

您的回复很可能是数组而不是字典。


如果您真的想将数组转换为字典,可以使用自定义键来执行此类操作:

NSArray *array = [self.responseData objectFromJSONData];
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithObject:array forKey:@"posts"];

如果您可以向我展示数组的内容,可能还有更好的选择。