使用Core Data会加速键值解析吗?



目前我正在从服务器上的XML文件下载和解析我的数据。在某一点上,我必须根据第二个XML文件中的所有值检查我的第一个XML键值,并将匹配的值存储到一个NSDictionary数组中,然后在表视图中显示它们。这可能需要大约5秒,我想加快速度。

我想知道如果我下载我的XML文件到一个核心数据结构,如果这将加快这个过程,所以加载时间不需要很长时间检查这些值对彼此

不,Core Data不会加速解析XML数据——您需要在将数据添加到Core Data存储之前解析XML。这可能会或可能不会加快下一步,你显然是在寻找匹配,但由于你还没有真正描述那里发生了什么,所以很难说是哪一种方式。

听起来像是在对两个XML文档中的键进行比较。如果您使用基于XML的API调用来实现这一点,那么您可能需要在XML文档1中对文档2中的每个键进行线性搜索。如果文档1中有N个键,文档2中有M个键,那就是N * M次操作。

只遍历每个文档一次以获得所有的键并将它们添加到像Core Data(或只是一个NSDictionary)这样的东西中,它为按键检索进行了优化,这似乎是一种改进,假设寻找匹配是减慢速度的原因。(如果您的大部分时间首先都花在简单地解析XML上,那么加快匹配的速度不会给您带来太多好处。)

最新更新