1

我正在使用 LumenWorks CsvReader 解析具有以下结构的文件。

heading1,heading2,heading3
data1,data2,data3,data4,data5

代码检测到我每行有三个字段,因为我有三个标题。它很高兴地允许我解析第一行并检索 data1、data2 和 data3,但我无法访问 data4 或 data5。至少,我希望能够检测数据行中的其他字段。有谁知道这是否可能?

谢谢!

4

2 回答 2

2

它这样做是因为它使用第一行来了解您的文件有多少列。如果将第一行更改为“heading1,heading2,heading3,”,它将按预期工作。

于 2012-05-11T15:11:26.323 回答
0

我希望您将无法读取这些字段中的数据。相反,我希望出现错误而您没有看到它。这至少可以让您检测到数据中是否存在其他字段。

尝试设置 DefaultParseErrorAction 枚举属性,以确保您看到出现的任何错误。我本来希望您描述的场景会触发 MalformedCsvException(如果您设置了 DefaultParseErrorAction = ParseErrorAction.ThrowException)。您还可以设置 DefaultParseErrorAction = ParseErrorAction.RaiseEvent,然后将事件处理程序附加到 ParseError 事件。最后,您应该能够在每条记录后检查 ParseErrorFlag 是否为真。

高温高压

于 2012-05-11T14:47:39.330 回答