我需要存储我的android应用程序内容,并想知道我应该使用什么存储。SQLite数据库还是XML文件?
应用程序和数据的一些特性:
我想,在XML文件中存储具有这些要求/特性的数据没有任何性能问题。如果是这样的话,我是否应该将每种测量类型分离成单独的XML-file,并在移动设备上存储这些文件?
发布于 2012-08-05 15:49:12
我会阅读一下你在安卓系统上可以找到的存储选项,试图挖掘更多的信息。
正如您所描述的,一次向放置框中的文件写入似乎是将XML文件写入保存在dropbox中的XML文件似乎是一个不错的选择。没有复杂的查询,一次只读取一条记录。
但是,我觉得使用SQL数据库不会有太多的工作。从长远来看,这将更加灵活。现在您不想执行查询,但总有一天您会这样做的。另外,您也不必担心将数据拆分成多个文件和解析东西。当您尝试缩放时,解析很快就会变得烦人。
我建议的是编写一个ContentProvider,然后把所有的细节都放进去。这样,您的程序就不会关心数据是如何存储的,以防您以后想要更改它,因为提供程序会为您完成所有繁重的工作。我宁愿使用CursorAdapter,也不愿使用其他任何东西,也不愿使用SQLite。另外,所有新的CursorLoader都保持了应用程序的性能。
发布于 2012-08-05 15:47:51
最好的长期解决方案是使用SQLite数据库。
但是如果您希望使用XML,那么这里已经提供了一个很好的解决方案:将静态数据存储在Android -自定义资源中?。
发布于 2012-08-05 15:45:58
如果XML数据很大的话。XML解析,然后插入是一个非常昂贵的操作,而且耗时。
您将在XML解析和插入中遇到一些问题。
XML解析是内存密集型的,因此堆的大小会增加,您需要密切注意这一点,因为这可能会导致崩溃。b.在SQLite DB中插入将花费大约100 of /元组(行),因此您可以计算出在数千行数据中输入所需的时间。
如果您的数据不太大,就不要费心使用SQLite。
https://stackoverflow.com/questions/11817671
复制相似问题