在本地保存用户应用程序数据的最佳解决方案是什么?

时间:2010-04-30 02:56:08

标签: c# storage

我正在为我的程序添加联系人功能,我想保存每个用户的联系人列表,这是什么最好的解决方案?我是XML和数据库的新手,我不知道哪个最好,或者是否存在本地保存的数据库解决方案。

3 个答案:

答案 0 :(得分:6)

这取决于您要定位的平台以及要保留的数据结构的大小和复杂性。显然,开放且易于阅读的格式(如XML或JSON或其他类型)更可取,但对于较大的应用程序,SQLite数据库甚至自定义保存格式等内容可能都是合适的。

所以,最重要的事情是:

  • 支持您选择的平台/语言
  • 人类可读性/可攻击性的重要性(可能是可取的或非常不可取的,请注意这也会影响第三方开发人员构建使用您保存的数据的应用程序的能力)。
  • 尺寸
  • 访问数据的速度(可能需要权衡将一次性加载到内存中需要多少内存)

对于纯文本文件的某些组合,它提供了近乎通用的语言和平台支持,人类可读和可编辑,但可能会因为大量数据而变大。对于较大的应用程序,SQLite数据库是正确的答案,但您必须检查并确保您的平台/语言支持它(大多数情况下),这意味着它无法在文本编辑器中进行编辑(尽管用户可以将其用于{ {1}}本身要修改),它会相当紧凑而且非常快。

答案 1 :(得分:1)

有几种选择,有不同的权衡。一个是SQLite,一个公共域关系数据库,它将数据库存储在一个文件中。它具有大多数语言的绑定。

编辑:我用于C#的一个好的绑定是System.Data.SQLite

答案 2 :(得分:1)

嗯,这完全取决于数据的性质:

  • CSV,XML,JSON(如果它是配置文件)
  • SQLite if是面向数据库的数据,您需要执行搜索

您使用的是哪种语言?