C# 存储刮取数据的最简单方法
我正在创建一个应用程序,它将搜索语言中函数的文档并返回结果。目前,文档由一个页面组成,该页面链接到专用于所选功能的页面。我准备了一种使用HTML Agility Pack检索数据的方法。我还有一个搜索关键字的算法。我只需要一种存储数据的方法。在这种情况下,易用性对我来说比效率更重要,因为应用程序只需要存储大约75条记录 以下是我提出的潜在解决方案列表:C# 存储刮取数据的最简单方法,c#,database,screen-scraping,C#,Database,Screen Scraping,我正在创建一个应用程序,它将搜索语言中函数的文档并返回结果。目前,文档由一个页面组成,该页面链接到专用于所选功能的页面。我准备了一种使用HTML Agility Pack检索数据的方法。我还有一个搜索关键字的算法。我只需要一种存储数据的方法。在这种情况下,易用性对我来说比效率更重要,因为应用程序只需要存储大约75条记录 以下是我提出的潜在解决方案列表: System.Data.SQLite CSV XML 我认为大多数人会立即提出这些解决方案。到目前为止,我已经尝试了解决方案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;
}
}
对于平面数据,csv。否则是xml或json。这就是我在回答时考虑的问题。谢谢你的例子。我最终序列化了一个对象向量。