XML解析为分页

时间:2017-09-14 12:14:00

标签: ios arrays swift uitableview

我有一个XML文件,我从服务器下载了50k元素。我需要在tableView中显示这些50k元素。 但它消耗更多的内存。

所以我认为swift中有任何XML解析器,它允许我分类,如下一个10-20解析1到10等等。

1 个答案:

答案 0 :(得分:1)

所有你需要的是SAX xml解析器,如libxml2DOM解析器将无法使用50K元素解析数据,因为DOM解析器会将整个Document Object Model加载到内存中以构造树,然后解析节点。 SAX解析器解析块中的xml。

不幸的是,我所知道的大多数SAX解析器都在C语言中。所以你必须在它们周围编写包装器才能使用swift项目。好消息是有教程解释如何使用它们。

这里有一些将libxml2集成到swift项目的有用链接。

http://redqueencoder.com/wrapping-libxml2-for-swift/ https://www.cocoawithlove.com/2008/10/using-libxml2-for-parsing-and-xpath.html

修改

您也可以使用NSXMLParser,这是一个用Objective-C编写的SAX解析器。您可以在Swift

中找到有关如何使用它的大量教程

https://medium.com/@lucascerro/understanding-nsxmlparser-in-swift-xcode-6-3-1-7c96ff6c65bc