如何使用csvHelper读取csv文件中的第二行

Agn*_*lec 8 c# csv csvhelper

我有一个带有两行的csv文件,第一行是标题行,其中包括36列分隔 ,

第二行是值,它们是由36分隔的值 ,

我想阅读第二行,我发现所有人都在谈论csvHelper包,所以我下载它,但它没有任何dll添加到我的项目中.

我的问题是如何包含它以及如何阅读第二行.

我知道我可以使用它安装它,Install-Package CsvHelper但我不希望这样,因为我想在服务器上部署此应用程序.因此,我更喜欢如果有某种方式add reference或类似的东西.

如果我知道如何包含它,阅读第二行并不难.我会做这样的事情:

  1. 加载csv文件
  2. 阅读第一行并忽略它.
  3. 阅读第二行并将其拆分,.

Tim*_*ter 17

您可以使用TextReader.ReadLine()跳过第一行:

using (TextReader reader = File.OpenText("filename"))
{
    reader.ReadLine();
    // now initialize the CsvReader
    var parser = new CsvReader( reader ); // ...
}
Run Code Online (Sandbox Code Playgroud)


Hak*_*tık 8

接受的答案是问题的解决方法,但是库具有针对此常见案例
CsvConfiguration的一流解决方案,HasHeaderRecord其具有可以设置的属性true,这将导致库跳过文件中的第一行.

CsvConfiguration configuration = new CsvConfiguration { HasHeaderRecord = true };

using (TextReader sr = new StringReader(fileContent))
{
    CsvReader reader = new CsvReader(sr, configuration);
}
Run Code Online (Sandbox Code Playgroud)

这是文档的片段

该标志告诉读写器CSV文件中是否有标题行.

UPDATE库的较新版本的类CsvConfiguration是刚刚更名为Configuration