19

我正在尝试读取上传的 CSV 文件,在对数据执行任何操作之前,我需要检查第一个标题名称以确保它是正确的文件。我一直在尝试找到一种方法来做到这一点,但读者却跳到了第二行。有没有直接选择一个标题并检查其值的方法?

4

2 回答 2

18

您可以使用 CsvReader 来获取标题行字符串,如本答案中所述:

using (var csv = new CsvReader(reader))
{
    csv.Read();
    csv.ReadHeader();
    string[] headerRow = csv.Context.HeaderRecord;
}
于 2018-04-25T16:12:08.003 回答
9

如果您只想检查第一行,可以直接使用解析器。

var parser = new CsvParser( textReader );
var row = parser.Read();
if( row[0] == "MyColumn" ) { /* do something */ }

如果您使用的是Stream,如果您要再次使用它,则需要将其重置为开头。

于 2014-10-01T21:29:54.137 回答