循环到未知 JSON 数据时如何在 allKeys 上捕获错误?
Posted
技术标签:
【中文标题】循环到未知 JSON 数据时如何在 allKeys 上捕获错误?【英文标题】:How to trap an error on allKeys when looping down into unknown JSON data? 【发布时间】:2013-11-06 02:36:53 【问题描述】:我正在收集未知结构的 JSON 数据,并尝试在 allKeys
的帮助下整理字典和数组。但是当我到达底部时,allKeys
被应用于不是字典的东西,当然,它会抛出一个错误并且代码崩溃。如何检测错误并避免崩溃?
【问题讨论】:
您可以从分享您的代码开始。但我想它涉及诸如“在发送消息之前确定它是什么类型的类”之类的建议 我不介意共享代码,但这是一个通用的问题,是的,borrrden,你是对的 - 这正是我正在寻找的。下面,cynnicaljoy 为我找到了它:isKindOfClass
.
【参考方案1】:
检查您正在使用的对象确实是一个 NSDictionary:
for (id obj in array)
if ([obj isKindOfClass:[NSDictionary class]])
for( NSString *aKey in [(NSDictionary *)obj allKeys] )
NSLog(@"Key: %@", aKey);
【讨论】:
谢谢你,愤世嫉俗的喜悦!这正是我想要的。以上是关于循环到未知 JSON 数据时如何在 allKeys 上捕获错误?的主要内容,如果未能解决你的问题,请参考以下文章
如何在大小未知时使用 while..do 循环初始化 F# 列表
如何在 ReactJS 中循环来自外部文件的 JSON 数据?