使用 NSDictionary 访问 JSON 序列化时出现异常
Posted
技术标签:
【中文标题】使用 NSDictionary 访问 JSON 序列化时出现异常【英文标题】:Exception in Access to JSONserialization with NSDictionary 【发布时间】:2016-07-26 23:58:24 【问题描述】:我有来自 API Rest 的数据。我将其转换为带有序列化的NSArray
并将其转换为字典。但我无法访问对值(如下)。
我的第一步:
NSArray *arrayDiccionario = [NSJSONSerialization JSONObjectWithData:data _
options:NSJSONReadingMutableContainers error:&errorSerializacion];
我的第二步:
NSMutableArray *arrayMisObjetos = [NSMutableArray new];
我的第三步:
for(NSDictionary *diccionario in arrayDiccionario)
_eventId = [ [ diccionario objectForKey:@"id" ] intValue ];
_nameEvent = [ diccionario objectForKey:@"nameEvent" ];
在这一步我有一个例外。
diccionario have 0 elements and I don´t have access to any object with Keys
怎么了?
对不起我的英语。
---- arrayDiccionario Information ----
--------------------------------------
[0] (null) @"listEvents" : @"10 elements"
key __NSCFString * @"listEvents"
value __NSArrayM * @"10 elements"
[0] __NSDictionaryM * 2 key/value pairs
[0] (null) @"id" : (long)65
[1] (null) @"nameEvent" : @"Open Malaga"
[1] __NSDictionaryM * 2 key/value pairs
[2] __NSDictionaryM * 2 key/value pairs
[3] __NSDictionaryM * 2 key/value pairs
[4] __NSDictionaryM * 2 key/value pairs
[5] __NSDictionaryM * 2 key/value pairs
[6] __NSDictionaryM * 2 key/value pairs
[7] __NSDictionaryM * 2 key/value pairs
[8] __NSDictionaryM * 2 key/value pairs
[9] __NSDictionaryM * 2 key/value pairs
【问题讨论】:
我更新了有序列表和代码格式。如果这不正确,请应用正确的格式。 【参考方案1】:你的json是什么?先显示你的json for(NSDictionary *diccionario in arrayDiccionario) 你的 arrayDictionay 不是一个数组。是一个字典。你不能使用 for(NSDictionary *diccionario in arrayDiccionary)
【讨论】:
以上是关于使用 NSDictionary 访问 JSON 序列化时出现异常的主要内容,如果未能解决你的问题,请参考以下文章
尝试从 json 创建的 nsdictionary 访问信息
访问从 NSJSONSerialization 生成的 NSDictionary 中的 JSON 数据
如何在 NSDictionary 中访问本地 JSON 文件响应以在 UITableView 中显示?
在 Swift 中访问 JSON NSDictionary 对象值的简单方法?