我有NSMUtableDictionary,它包含多个字典。我正在对该数据进行XML解析。 现在什么时候返回字典数据,它给我最后一个字典值。 这是我的代码:
for(CXMLNode* child in [element children]) {
id v = [Soap deserialize:child];
if(v == nil) {
v = [NSNull null];
}
[d setObject:v forKey:[child name]];
}
NSLog(@"dData=%@",d);
return d;
当我返回d的值时,它给出了最后一个字典值。 请建议我解决这个问题的方法。 谢谢
答案 0 :(得分:0)
根据您的描述,[子名称]可能不是唯一的。为什么不是NSLog(@“child name =%@”,[child name]);在设置对象并确保名称是唯一的之前?
此外,您可以在任何地方设置断点和类型:
po d
在调试器中列出d。
的内容答案 1 :(得分:-2)
您无法将NSNull
对象作为字典插入NSMutableDictionary
。每当您的第一个NSNull
对象附加在字典(d)中时,这将指示您的字典结束。检查所有病例中是否存在CXMLNode
的孩子。否则这是问题的根本原因。
考虑进入CXMLNode
的数据来自互联网,然后首先检查该服务是否正在发送正确的数据。