NSXMLParser vs KissXML vs TouchXML 哪一个内存效率更高?
我有一个很大的 XML 文件(大约 1mb)。我想问我是否使用 NSXMLParser 或 KissXML/TouchXML 解析 XML。
哪个会占用更少的临时内存? (解析过程中获取的内存)。
I have a large XML file ( around 1mb ) . i want to ask that if i parse the XML with NSXMLParser or KissXML/TouchXML.
which will take less interim memroy ?? ( the memroy took during parsing ) .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
考虑到大型 XML 文档,您可能不需要 DOM 解析器,这就排除了 KissXML 和 TouchXML。而是寻找 SAX 解析器。
在 SAX 模式下使用 libxml2 的内存效率比 NSXMLParser 稍高(非常小),但后者具有更友好的 API,因此最小的内存节省可能不值得(我认为直接跳到原始 libxml2 不值得) )。
如果您执意要使用 DOM 解析器,那么您将无法找到任何像 SAX 解析器那样具有内存效率的东西来处理您的文档。因此,我不会推荐任何 DOM 解析器。
Considering for a large XML document you're likely not going to want a DOM parser, that rules out KissXML and TouchXML. Look for a SAX parser instead.
Using libxml2 in SAX mode is slightly (very marginally) more memory efficient than NSXMLParser, but the latter has a friendlier API, so the minimal memory savings may not be worth it (I wouldn't consider it worth it to jump straight to raw libxml2).
If you are dead set on using a DOM parser, you're not going to be able to find anything to process your document anywhere near as memory efficient as a SAX parser. For that reason, I won't recommend any DOM parser.