如何在 Objective-C iphone sdk 中迭代嵌套字典

2023-12-10

您好,我有一个 json 字符串,已通过 JSON 框架转换为字典,我需要提取其内容。我怎样才能迭代到嵌套字典?我已经有了这段代码,可以让我查看字典:

NSDictionary *results = [responseString JSONValue]; 
NSMutableArray *catArray = [NSMutableArray array];

for (id key in results) {
    NSLog(@"key: %@, value: %@", key, [results objectForKey:key]);
    [catArray addObject:key];
    NSString *cat = key;
}

有人可以提供一个示例,说明如何在不使用键名的情况下到达 dic 的所有级别吗?

dic的结果结构如下:http://www.freeimagehosting.net/uploads/e7c020d697.png

替代文本 http://www.freeimagehosting.net/uploads/e7c020d697.png

thanks

ldj


您可能必须尝试递归函数。

-(void)recurse:(NSDictionary *)dict counter: (int*) i parent:(NSString *) parent{
    for (NSString* key in [dict allKeys]) {
        id value = [dict objectForKey:key];
        NSLog(@"%@ -> %@", parent, key);
        if ([value isKindOfClass:[NSDictionary class]]) {
            i++;
            NSDictionary* newDict = (NSDictionary*)value;
            [self recurse:newDict counter:i parent:key];
            i--;
        } else {
            //Do smthg
        }
    }
}

这将列出所有键及其级别。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Objective-C iphone sdk 中迭代嵌套字典 的相关文章

  • 递归与迭代算法

    我正在实现欧几里德算法来查找两个整数的 GCD 最大公约数 给出了两个示例实现 递归和迭代 http en wikipedia org wiki Euclidean algorithm Implementations http en wik
  • NSTextField 委托通知——如何获取文本?

    我一直在尝试学习使用 Xcode 但我对如何注册感到困惑NSTextField已经改变 本质上 我有一个NSTextField和一个按钮 单击该按钮会填充字段中的文本 但是 我希望能够获取该字段的文本 而无需使用文本字段 操作 结束编辑时发
  • 在 Objective-C 中检查 Json 响应的空值

    AT null EA null AD2 OP null AdsLst EMs null ND MN null FN Sony LN J ZP 23456 CT 1 PP 0 cId 161464 Pos null WPExt null OS
  • 如何将嵌套对象数组转换为 CSV?

    我有一个包含嵌套对象的数组 例如 name 1 children name 1 1 children 1 2 id 2 thing name 2 1 children 2 2 name 3 stuff name 3 1 children 3
  • 我们可以在 Objective-C 中创建可空/非空属性吗?

    我们可以在 Objective C 中创建可空 非空属性吗 如果可以 那么如何创建 您可以使用 Nullable and Nonnull预选赛 property copy nullable NSString name property co
  • 模拟 Push Segue 的自定义 Segue 将 VC 变成僵尸

    使事情简短明了 我写了一个自定义的segue void perform UIView preV UIViewController self sourceViewController view UIView newV UIViewContro
  • 使用 Swift 导入 aurioTouch 库

    我正在尝试将 Objective C 应用程序转换为 swift 我想导入课程奥里奥触摸 https developer apple com library ios samplecode aurioTouch Introduction In
  • 检测 SFSafariViewController 中的 URL 更改

    我有一个 SFSafariViewController 当用户点击我的应用程序中的链接时 它会打开 我需要检测 URL 何时更改 这样当它更改时 应用程序会显示警报 我们如何检测 SFSafariViewController 中的 URL
  • 为什么删除 else 会减慢我的代码速度?

    考虑以下函数 def fact1 n if n lt 2 return 1 else return n fact1 n 1 def fact2 n if n lt 2 return 1 return n fact2 n 1 它们应该是等价的
  • ALAssetPropertyDate 返回“错误”日期

    我目前正在开发一个项目 需要读取一些 纬度 经度和日期 EXIF 数据 位置数据似乎是正确的 但我得到的日期似乎是 上次修改日期 日期 CLLocation loc asset valueForProperty ALAssetPropert
  • 使用自定义组件:子类 UIView 或 UIViewController?

    我正在研究 UISegmentedControl 的自定义实现 我想创建一个能够接收配置数据并从中获取类似于 UISegmentedControl 的自定义视图的组件 我开始对 UIView 进行子类化 我可以使用以下代码创建自定义 UIS
  • 如何在 JSONKit 中 JSON 序列化 NSDate 字典

    我尝试使用 Jsonkit 和 Apple 的 JSON 序列化器 但没有成功 它不断破坏 geo 属性 该属性是 NSNumbers 的 nsarray Post p Post alloc init p uname mike p like
  • 新的自动引用计数机制如何工作?

    有人可以简单地向我解释一下 ARC 的工作原理吗 我知道它与垃圾收集不同 但我只是想知道它到底是如何工作的 另外 如果 ARC 的作用与 GC 的作用相同且不影响性能 那么 Java 为什么要使用 GC 为什么它不使用 ARC 呢 每个接触
  • NSTextview:如何获取插入点的字形矩形?自定义文本视图?

    我似乎找不到任何有关如何获取插入点的矩形的文档 我试图在文本插入点 插入点正下方显示一个视图 如自动完成 我正在考虑制作一个自定义文本视图 但如果我可以避免它 那对我的情况来说将是理想的 谢谢 NSRect rectForActiveRan
  • IOS 无法从 Google Drive 获取文件

    这是我的代码 GTLQueryDrive query GTLQueryDrive queryForFilesList query q NSString stringWithFormat IN parents root self driveS
  • MongoDB 中递归文档的结构和查询语法?

    我最近开始在工作项目中研究 MongoDB 我对 JSON 和 MongoDB 的查询结构相当陌生 所以我希望你们中的一位能够提供一些说明 我已将这个问题翻译成 Excel 术语 因为它很常见并且很好地代表了我的问题 如果我尝试将 Exce
  • 具有自定义视图的相机

    我的应用程序使用相机 我想在相机预览上添加叠加层 例如 我想在使用相机时使用相框 还想添加一个用于相机操作的自定义栏 请帮助我做同样的事情 您可能正在尝试使用 UIImagePickerController 但我知道这个可以解决你的问题 您
  • 在 wkwebview 中启用摄像头和麦克风访问

    我有一个针对移动设备优化的网络应用程序 它利用getUserMedia访问网络摄像头和麦克风资源 我正在将这个应用程序包装在WKWebView因为我想提供原生应用程序体验 我知道 iOS 不允许通过浏览器访问相机 但是有什么方法可以使用本机
  • 使用递归 CTE 遍历父/子树?

    我被 cte 困住了 我想要一个查询 其中第一个父级为空 上一个父级的子级将成为下一个父级的父级 依此类推 WITH RESULT PARENT CHILD TNAME LEVEL AS anchor SELECT E PARENT GEN
  • UIPopViewController 不工作

    我有一个 xib 文件 其中有 h 和 m 链接 在 xib 中有一个带有 textView 的 UIView 我想要对该视图执行的操作是 当您单击按钮时将其作为 UIPopViewController 打开 这是我的代码 IBAction

随机推荐