2

我正在创建一个应用程序,它将在一种语言中搜索函数的文档并返回结果。目前,文档由一个页面组成,该页面链接到专用于所选功能的页面。我准备了一种使用 HTML Agility Pack 检索数据的方法。我也有一个算法来搜索关键字。我只需要一种存储数据的方法。对我来说,易用性比效率更重要,在这种情况下,因为应用程序只需要存储大约 75 条记录。

这是我提出的潜在解决方案的列表:

  1. System.Data.SQLite
  2. CSV
  3. XML

我认为这些是大多数人会立即提出的解决方案。到目前为止,我已经尝试了解决方案 1,对于相对较少的记录来说,这似乎比必要的工作要多。

对于这个项目,你会建议什么存储方法?

4

2 回答 2

1

如果数据集相对较小并且速度不是问题,我会选择 XML。如果您正确设计了您的类并且它是可序列化的,那么您可以只使用 Xml 序列化中的构建。

[Serializable]
public class MyDataStorage
{
    // some members

    public void Store( String filename )
    {
        XmlSerializer serializer = new XmlSerializer( typeof( MyDataStorage ) );
        using ( FileStream stream = File.OpenWrite( filename ) )
        {
            serializer.Serialize( stream, this );
        }
    }

    public static MyDataStorage Load(String filename )
    {
        XmlSerializer serializer = new XmlSerializer( typeof( MyDataStorage ) );
        object deserialized;
        using ( FileStream stream = File.OpenRead( filename ) )
        {
            deserialized = serializer.Deserialize( stream );
        }

        return (MyDataStorage) deserialized;
    }
}
于 2012-10-28T07:59:58.103 回答
0

对于平面数据,csv。否则为 xml 或 json。

于 2012-10-29T00:15:09.983 回答