如果未输入,则使用Filehelpers忽略CSV中的最后一行

时间:2013-11-12 15:39:55

标签: c# csv filehelpers

我使用FileHelpers构建了一个程序来解析CSV文件,除了我遇到问题外,它还可以创建奇迹。 一些文件 - 但不是全部 - 最后有一些额外的行,其中的信息与实际字段无关。

喜欢这样

...
31,4104019, ,,1043,,,0,,Ventas Total Credito,1,1,277.98,0,0,0,0,21.5040000000,V,
31, ,11212302,,1043,,,0,,Ventas Total Credito,1,1,33.28,0,0,0,0,21.5040000000,V,
31, ,11212307,,1043,,,0,,Ventas Total Credito,1,1,277.98,0,0,0,0,21.5040000000,V,

;Importado="01/11/2013"
 //blank line here too

我知道FileHelpers有

[IgnoreLast(3)] 
public class whatever...

选项,但由于只有部分文件具有额外的3行,因此对所有文件使用此选项可能会导致某些文件忽略最后3条记录。

有没有办法告诉它什么时候忽略一条线?或者我应该先单独阅读文件并自行删除这些文件?

1 个答案:

答案 0 :(得分:0)

您可以使用 BeforeReadRecord 事件或在记录 INotifyRead 界面中实现更简单。

在两种情况下都使用e.SkipThisRecord = true;在你需要丢弃的情况下