Answers:
试试CsvHelper。它与FastCsvReader一样易于使用,并且也可以编写。过去,我对FastCsvReader感到非常满意,但是我也需要编写一些东西,而对FileHelpers却不满意。
读:
var csv = new CsvReader( stream );
var myCustomTypeList = csv.GetRecords<MyCustomType>();
写作:
var csv = new CsvWriter( stream );
csv.WriteRecords( myCustomTypeList );
完全披露:我是这个图书馆的作者。
WriteField
。在此处查看文档joshclose.github.io/CsvHelper
CsvHelper
。也许它可以提供一些另类的阅读策略?顺便说一句,我已经删除了我的原始发言,因为它已经不相关了:-)
在框架本身中有两个选择。
最简单的方法之一是引用Microsoft.VisualBasic,然后使用TextFieldParser。它是核心框架中的全功能CSV阅读器。
另一个不错的选择是使用数据集读取CSV文件。
Sebastien Lorion CSV
在CodeProject上拥有出色的阅读器,称为A Fast CSV Reader。可能是C#最好的之一,它是免费的。
就写作而言,只需使用即可StreamWriter
。
以下是一些用于将a写入DataGridView
文件的样板代码:
private void exportDGVToCSV(string filename)
{
if (dataGridView1.Columns.Count != 0)
{
using (Stream stream = File.OpenWrite(filename))
{
stream.SetLength(0);
using (StreamWriter writer = new StreamWriter(stream))
{
// loop through each row of our DataGridView
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string line = string.Join(",", row.Cells.Select(x => $"{x}"));
writer.WriteLine(line);
}
writer.Flush();
}
};
}
}
是的-尽管我认为您实际上是在要求提供详细信息?
有几十个。
http://www.filehelpers.net/是最常见的网站之一。
我应该说,我发现Filehelpers在某些情况下是限制性的,而是使用The Fast CSV Reader。以我的经验,如果在运行时之前不知道CSV文件的格式或导入映射,那么这是更好的库。
.net csv library
。有证据表明,尽管我认为这是一个轶事,但在过去六年中,这个问题已被查看了22000多次。