在C#中读取CSV时忽略列的最佳方式是什么?

在C#中读取CSV时忽略列的最佳方式是什么?,c#,linq,csv,C#,Linq,Csv,所以我读了一个大的CSV文件,它可能看起来像 "Intelligent Mail barcode","Sack and Pa","Opt. Endorsement Line","Label ","NAME","COMPANY","DELADDR","CITY","ST","ZIP" "xxxxxxxxxxxxxxxxxxxxxxxxx","T1 P1","******AUTO**MIXED AADC 403","xxxx","xxxxxxxx","xxxxxxxxxxxxxxxx","xxxx

所以我读了一个大的CSV文件,它可能看起来像

"Intelligent Mail barcode","Sack and Pa","Opt. Endorsement Line","Label ","NAME","COMPANY","DELADDR","CITY","ST","ZIP"
"xxxxxxxxxxxxxxxxxxxxxxxxx","T1  P1","******AUTO**MIXED AADC 403","xxxx","xxxxxxxx","xxxxxxxxxxxxxxxx","xxxxxxxx","xxxxx","xxxx","xxxxx"
"xxxxxxxxxxxxxxxxxxxxxxxxx","T1  P1","******AUTO**MIXED AADC 403","xxxx","xxxxxxxxxx","xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","xxxxxx","xxxxx","xx","xxxxx"
在这种情况下,我希望能够删除前4列。所以,智能邮件,Sack和Pa,选择。背书,标签1将被忽略,与之相关的数据也将被忽略或为空

因此,输出将是

"NAME","COMPANY","DELADDR","CITY","ST","ZIP"
"xxxxxxxx","xxxxxxxxxxxxxxxx","xxxxxxxx","xxxxx","xxxx","xxxxx"
"xxxxxxxxxx","xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","xxxxxx","xxxxx","xx","xxxxx"
我怎样才能做到这一点?寻找最简单的方法来做到这一点

以下是我目前如何阅读CSV:

        using (StreamReader reader = new StreamReader(fileSaveLocation))
        {
            string line;
            header = reader.ReadLine();

            while ((line = reader.ReadLine()) != null)
            {
                sb.Append(line);
                sb.Append(Environment.NewLine);
            }
        }

我建议使用诸如LINQtoCSV之类的库来处理CSV文件和POCO类之间的序列化,而不是自己用
ReadLine
解析文件。这里有一个文档示例-您应该找到一个经过验证的CSV解析器,而不是自己编写。外面有很多,比如说谢谢,伙计们,我会尽快看一看这些。几乎是重复的: