我有一个xml形式的平面数据文件,但目前还没有真正的Windows查看器。我决定使用Node-WebKit创建一个简单的应用程序,仅用于基本查看 - 应用程序不需要写入数据文件。
我的问题是,我不知道读取大文件的正确方法。数据文件是电话短信和彩信的备份,MMS条目包含适用的Base64图像字符串 - 因此,文件变得非常大,具有大量图像(通常,大约250mb)。我没有在文件中创建/格式化原始数据,因此我无法修改它的结构。
所以,问题是 - 假设我已经有办法将XML解析为JavaScript对象,我是否应该 a)首次运行应用程序时解析整个文件,在应用程序生存期内将对象数组存储在内存中,或者 b)每次我想要提取对话(具有特定传出或传入号码的所有消息)时,通读整个文件,并仅将该数据存储在内存中,或者 c)采用一些我不了解的替代,更有效的解决方案。
答案 0 :(得分:1)
将XML数据转换为SQLite数据库。默认情况下,SQLite不是基于内存的。在需要数据时查询数据库,问题解决了:)