我已经将一个XML文件作为NSData加载到内存中,并使用NSXMLParser来解析元素。尽管它有效,但维护代码非常难看,因为大约有150个不同的元素需要解析。从XML NSData表示中获取NSDictionary的快速方法?
我知道有很好的第三方解决方案,但我希望将它与iPhone SDK一起用于练习和乐趣。
所以我想:为什么不将该XML文件转换为NSDictionary?有了这个,我可以使用快速枚举来查看元素。
还是仅仅是使用NSXMLParser立即解析和处理XML所需的相同数量的丑陋代码?
我会为XML中的每个找到的节点建立一个NSDictionary并创建一个包含整个结构和数据的巨大NSDictionary?还是有更简单的方法?
那么随iPhone SDK一起提供的NSXMLParser呢?其他人做了什么不同? – dontWatchMyProfile 2010-06-17 15:23:41
使用NSXMLParser,您将不得不通过自己构建对象层次结构。第三方解析器通常返回一个对象(NSArray或NSDictionary),它保存NSArray和NSDictionary等对象中的整个层次结构。另外,通常第三方解析器通常建立在libxml上,而不是NSXMLParser - libxml更快。还有一件事 - 据我所知,你不能使用NSXMLParser解析本地文件,但也许我错了这个... – 2010-06-17 20:33:35