使用C#从CSV更新或删除行

时间:2009-11-11 13:06:08

标签: c# csv oledb

任何人都可以帮我解决这个问题。

我有一个CSV文件,由unix应用程序用作配置文件。

该文件没有标题,第一列是唯一的。

这是文件的格式。

XXX1,11112009,11112009
XXX2,11112009,11112009

我如何使用C#:

1)更新整行 2)删除一行

我尝试使用OLEDB来更新文件,但由于没有标题,因此难以使用。

问候

ķ

4 个答案:

答案 0 :(得分:2)

使用File.ReadAllLines(path)将文件行读入String [],然后根据需要循环并输出。

这将达到几十万行。

答案 1 :(得分:1)

当您需要更新CSV文件时,几乎唯一的答案是阅读整个内容,修改它并再次写出来。或者如果它很大,你可以一次一行地交换这些操作。

答案 2 :(得分:0)

我建议使用FileHelpers库,您可以创建映射到您的文件结构的简单类。这样,您就可以拥有一个强类型的文件表示,易于编辑和再次保存。

它也很快。

答案 3 :(得分:-1)

如果您没有标题,则可以使用“Microsoft.Office.Interop.Excel”DLL。要获取此dll的引用,请使用“添加引用”和“.NET”选项卡。

您可以通过循环检查每个字段值,并且可以更新和删除匹配的字段。