如何解析每行首字符为逗号的CSV文件?

时间:2019-03-18 22:55:38

标签: c# csv filehelpers

我有一个c#CSV解析器,已经运行了好几个月了。它使用FileHelpers.CsvEngine来完成繁重的工作。我的系统必须按原样接收第三方CSV文件(很难返回到供应商并说“更改”)。经过几个月成功的CSV解析后,我现在遇到了几个大文件,其中每行以逗号开头。 CSV确实使用逗号分隔的值(而不是制表符,空格等)。

这是爆炸的线:

,ORG_NO,ORG_REV_NO,ZMODEL,Q_DATE
,7,1,02-8FD10            ,7/21/2009 9:33
,7,1,02-8FD14            ,7/21/2009 9:33
,7,1,02-8FD15            ,7/21/2009 9:33
,7,1,02-8FD18            ,7/21/2009 9:33

这是错误:

  

字符串”不是有效的.NET标识符

以下是CSV中的一些示例行(第一行是标题):

ng-controller="..."

观察到每一行的第一个字符是逗号,这似乎使解析器感到窒息。

作为最后的选择,我可以循环文件,删除第一个字符,然后继续解析-但是有没有更优雅/直接的方式来处理此问题?我想要一种方法来处理它,而不需要在解析它之前先查看每个CSV,看看第一个字符是否是逗号,然后使用备用(且昂贵)的逗号删除代码路径。

有什么想法吗?

0 个答案:

没有答案