我在iOS应用中加载到Core Data中的数据量相对较少(存储在静态文本文件中)。 在设备上存储静态数据并将数据加载到Core Data中的最快或首选方法是什么?
我尝试将数据放入XML格式并使用libxml将其加载到Core Data中。我还尝试将数据放入CSV格式并使用基本字符串解析将其加载到Core Data中。对于给定的数据集,这两种方法似乎花费大约相同的时间。我注意到通过在循环之外调用 NSManagedObjectContext save 对行(或XML节点取决于格式)来减少加载时间。
请注意,数据仅在应用首次启动时加载。此外,我尝试“使用另一个实用程序应用程序创建SQLite数据库,然后根据this question的反馈将SQLite数据库与当前应用程序捆绑”。但是我无法让它发挥作用。如果这是最好的方法,那么我会再试一次。
干杯!
答案 0 :(得分:1)
最简单的解决方案是在开发期间将数据加载到Core Data持久性SQL存储中。然后在应用程序包本身中包含该文件。首次启动时,将文件从只读应用程序包复制到Documents或Library目录中。然后正常打开商店。所有数据都将到位并准备就绪。