我正在尝试阅读上传的CSV文件,在对数据进行任何操作之前,我需要检查第一个标题名称,以确保它是正确的文件。我一直试图找到一种方法,但读者会跳到第二行。有没有直接的方法来选择其中一个标题并检查其值?
答案 0 :(得分:8)
如果您只想检查第一行,可以直接使用解析器。
var parser = new CsvParser( textReader );
var row = parser.Read();
if( row[0] == "MyColumn" ) { /* do something */ }
如果您使用的是Stream
,则需要将其重置为开头,如果您打算再次使用它。
答案 1 :(得分:3)
您可以使用CsvReader获取标题行字符串,如下面的答案所述:https://stackoverflow.com/a/48307798/1043475
using (var csv = new CsvReader(reader))
{
csv.Read();
csv.ReadHeader();
string[] headerRow = csv.Context.HeaderRecord;
}