ios - 如何到达 JSON 的复杂部分?

标签 ios objective-c json

这是我的 JSON 响应

{
error: false,
loggedin: null,
-data: {
    -homework: [
    -{
        +HomeworkSession: {},
        +elements: []
    },
    +{},
    {},
    {}
    ],
    +lessons: {},
    +date_span: {},
    +type: "parents"
    }
}

我不知道如何访问 HomeworkSession。 我通过使用以下代码将其放入 NSData 来获取此 JSON:

_jsonData = [[NSData alloc] initWithContentsOfURL:
                  [NSURL URLWithString:@"my_url"]];

但我不能从那里开始......无论我做什么我都没有得到回应。 任何一段代码都会有所帮助!

最佳答案

代码应该是这样的:-

    NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
    jsonDictionary = [NSJSONSerialization JSONObjectWithData:jsonData options:0 error:&error];
    NSDictionary * data = [jsonDictionary objectForKey:@"data"];
    NSArray * homework = [data objectForKey:@"homework"];

    for(int i=0;i<homework.count;i++){
        NSDictionary * singleHomework = [homework objectAtIndex:i];

        NSDictionary *HomeworkSession = [singleHomework objectForKey:@"HomeworkSession"];
        NSArray *elements = [singleHomework objectForKey:@"elements"];

        NSLog(@"%@",HomeworkSession);
        NSLog(@"%@",elements);
    }

注意:当 HomeworkSession 和元素为空时,NSLog 将显示为 nil。

关于ios - 如何到达 JSON 的复杂部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24137188/

相关文章:

ios - 在导航 Controller 类的类别中添加左右栏按钮项

ios - 如何使用深层链接重定向到 Apple App Store? (例如查询字符串)

objective-c - 点击后更改 UIButton 的文本或背景

ios - 将 CALayer 移动到另一个 View 或更改 CALayer.contents,哪个更有效?

java - 使用 Gson RuntimeTypeAdapterFactory 和 lenient = true 设置

json - 如何使用Json4s将Map转Json

javascript - For循环不适用于js map 功能

ios - UIScrollView - 无需快照即可恢复到起始位置

ios - map 注释有很多问题

ios - iOS 10 中的游戏中心挑战