2

新手 android 程序员在这里。我已经搜索过,试图找到我正在寻找的东西,但还没有完全找到它。如果这个问题已经回答或过于简单,请原谅我。最接近的是这个讨论: Android 性能:平面文件与 SQLite

我过去使用过 SQL,我知道使用关系数据库而不是平面文件可以更好地处理我的数据。但是,每天都需要将数据导出为 CSV,因此我编写了应用程序来存储到一个小的平面文件 csv 中。该文件包含客户信息,如姓名、余额、电话、地址等。客户总数约为 500。文件约为 30K。

1)我想知道在 Android 设备上,在时间方面将数据保存到文件的最佳做法是什么。假设我坚持使用平面文件,每次用户输入数据时最好保存整个文件(每 30 秒左右一次,持续一个小时),还是定时保存,或者让用户保存文件?我不能使用 onPause/等。因为应用程序经常在活动之间切换,并且有时可能不需要编写。

2) Android 上的 SQLite 是否每次都写入整个 db 文件,还是“磁盘密集型”较少?IE 当我写入平面文件时,我必须每次都替换整个内容...... SQLite 是写入整个文件还是更类似于附加,因此磁盘密集度较低?我了解数据库在内存中的工作方式,但我不知道它在磁盘输出方面的工作方式。想知道效率,即使是小文件。如果继续重写平面文件而不是简单的单行追加到数据库文件只是愚蠢的,那么也许值得设置一个数据库然后导出到 csv。

我会很感激任何帮助。

4

0 回答 0