1

我使用 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 条记录。

有没有办法告诉它何时忽略一行?还是我应该先单独阅读文件并自己删除这些行?

4

1 回答 1

0

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

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

于 2013-11-12T16:17:45.477 回答