从 JSON 从 NSDictionary 获取键值对
getting key value pairs out of NSDictionary from JSON
我对这一切有点陌生,我无法从传入的 JSON NSDistionary 中获取信息。这是词典:
作为第一步,我尝试检索地址部分的邮政编码,代码如下:
for (NSString *address in jsonData [@"address"][@"postcode"]) {
NSLog(@"address is ===> %@", address);
}
然而,当我 运行 收到 NSException 错误时:
'NSInvalidArgumentException',原因:'-[__NSArrayM objectForKeyedSubscript:]:发送到实例 0x79e4daf0 的无法识别的选择器'
如能提供任何帮助,我们将不胜感激。
谢谢
如图所示,您的 JSON 文件包含 3 个对象的数组,我们首先将数据转换为数组。
然后你必须使用
访问字典
1.valueForKeyPath@"dictionarykey1.dictionarykey2"。
2.objectForKey@"dictionarykey1"。
NSLog(@"JSON: %@", responseObject);
NSArray *Response=(NSArray*)[responseObject copy];
NSString * Address=[Response[0] valueForKeyPath:@"address.postcode"];
我对这一切有点陌生,我无法从传入的 JSON NSDistionary 中获取信息。这是词典:
作为第一步,我尝试检索地址部分的邮政编码,代码如下:
for (NSString *address in jsonData [@"address"][@"postcode"]) {
NSLog(@"address is ===> %@", address);
}
然而,当我 运行 收到 NSException 错误时: 'NSInvalidArgumentException',原因:'-[__NSArrayM objectForKeyedSubscript:]:发送到实例 0x79e4daf0 的无法识别的选择器'
如能提供任何帮助,我们将不胜感激。 谢谢
如图所示,您的 JSON 文件包含 3 个对象的数组,我们首先将数据转换为数组。 然后你必须使用
访问字典1.valueForKeyPath@"dictionarykey1.dictionarykey2"。
2.objectForKey@"dictionarykey1"。
NSLog(@"JSON: %@", responseObject);
NSArray *Response=(NSArray*)[responseObject copy];
NSString * Address=[Response[0] valueForKeyPath:@"address.postcode"];