在本地存储网址的最佳方式

时间:2008-10-02 14:56:02

标签: c# sqlite plaintext

我正在创建一个RSS阅读器作为业余爱好项目,并且用户正在添加自己的URL。

我在想两件事。

  • 每个网址为单行的纯文本文件
  • SQLite,其中我可以在URL
  • 后面有唯一的ID和描述

SQLite的想法是否需要大量开销,还是有更好的方法来做这样的事情?

5 个答案:

答案 0 :(得分:2)

为什么不使用XML?

如果你正在处理RSS,你还可以:)

答案 1 :(得分:2)

作为OPML文件怎么样?它是XML,所以如果您需要存储更多数据然后OPML规范提供,您可以随时添加自己的命名空间。

此外,从其他RSS阅读器导入和导出都是通过OPML完成的。通常有图书馆支持。如果您对用户切换感兴趣,那么您必须支持OPML。 Thansk向jamesh提出这一点。

答案 2 :(得分:1)

您打算只存储网址吗?或者您计划添加last_fetch_time左右的数据?

如果它只是一个简单的URL列表,您的程序将逐行读取并下载数据,将其存储在文件中,甚至更好地存储在写入文件的某个序列化对象中。

如果你打算扩展它,添加最后一次获取的评论/时间,,我会选择SQLite,这不是那么多开销。

答案 3 :(得分:0)

如果它是一个只有一个实例的单个用户应用程序,那么SQLite可能有点过分。

我看到你有几个选择:

  1. SQLite /数据库层。增加代码运行所需的依赖关系。但允许并发访问
  2. 滚动您自己的文本解析器。复杂性随着您想要保存更多数据而增加,并且您正在重新发明轮子。减少依赖性,最初,虽然您的数据很简单,但对于您的应用程序的新手用户来说,这是微不足道的。
  3. 使用XML。它结构良好&定义和文本可编辑。虽然存储一个URL可能有点过分。
  4. 使用类似pickle的内容来序列化对象并将其保存到磁盘。对数据结构的更改意味着“升级”pickle文件。编辑新手用户不是很直观,但非常容易实现。

答案 4 :(得分:0)

我会使用XML文本文件选项。您可以使用Visual Studio中内置的XSD工具从XML数据中创建DataTable,并在需要时轻松地序列化回文件。

另一个警告是,我确信你会希望最终用户能够对他们的RSS源进行分类并能够对它们进行搜索/排序,并且拥有这种数据表样式将有助于此

您将获得简单的文件存储和访问,这是“数据库”结构的好处,但不是SQLite的开销。