【问题标题】:JSONKit NSDictionaryJSONKit NSDictionary
【发布时间】:2013-01-28 10:44:44
【问题描述】:

我在使用NSDictionaryJSONkit.h 中遇到问题。正确的使用方法是什么?

json:

[{"id":"1100","name":"John Stuart"}]

代码:

- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    NSDictionary *jsonData = [responseData objectFromJSONData];
    NSString *name = [jsonData objectForKey:@"name"];
    NSLog(@"Name: %@", name);
}

错误:

** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[JKArray objectForKey:]: unrecognized selector sent to instance 0x84b9b30'

【问题讨论】:

  • 您从某个示例中复制的第一行是错误的。最外层的 JSON 结构是一个“数组”,由周围的 [] 字符表示。

标签: objective-c xcode jsonkit


【解决方案1】:

您的 JSON 是一个数组,但您的代码假定它是一个字典并尝试在其上调用 -objectForKey:。您可能想尝试以下方法:

- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    NSArray *jsonData = [responseData objectFromJSONData];
    for (NSDictionary *dict in jsonData) {
        NSString *name = [dict objectForKey:@"name"];
        NSLog(@"Name: %@", name);
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-19
    • 2012-05-29
    • 2012-07-26
    • 2012-08-01
    • 2012-08-18
    • 1970-01-01
    相关资源
    最近更新 更多