任何人都可以请这个查询来帮助我。使用C更新或从CSV中删除一行#
我有一个CSV文件,由unix应用程序用作配置文件。
该文件没有标题,第一列是唯一的。
这是该文件的格式。
XXX1,11112009,11112009
XXX2,11112009,11112009
我如何使用C#:
1)更新AA全线
2)删除线
我尝试使用OLEDB来更新文件,但因为没有标题,所以很难处理。
问候
ķ
任何人都可以请这个查询来帮助我。使用C更新或从CSV中删除一行#
我有一个CSV文件,由unix应用程序用作配置文件。
该文件没有标题,第一列是唯一的。
这是该文件的格式。
XXX1,11112009,11112009
XXX2,11112009,11112009
我如何使用C#:
1)更新AA全线
2)删除线
我尝试使用OLEDB来更新文件,但因为没有标题,所以很难处理。
问候
ķ
使用File.ReadAllLines(路径)将文件行读取到String []中,然后循环并根据需要输出。
这将工作多达几十万行。
感谢所有的回应,这一个是我用过的橱柜。 – Kojof 2009-11-11 15:58:54
如果你没有头,那么你可以使用 “的Microsoft.Office.Interop.Excel” DLL。要获得此dll的引用,请使用“添加引用”和“.NET”选项卡。
你可以通过循环检查每个字段的值,并可以更新和删除,这是匹配的。
不幸的是,我不能在生产服务器上运行这个“Microsoft.Office.Interop.Excel”DLL。 – Kojof 2009-11-11 13:22:32
我会推荐FileHelpers库,你可以制作简单的类,它映射到你的文件结构。通过这种方式,您可以对该文件进行强类型表示,该文件易于编辑并再次保存。
它也很快。
当您需要更新CSV文件时,几乎唯一的答案就是读取整个文件,修改并再次写出。或者如果它很大,则一次将这些操作交错一行。
文件的静态是多少,它有多少行10,100,1,000,000或100,000,000?大小有所作为。 – kloucks 2009-11-11 13:14:11