仅从csv文件c#中读取特定列[重复]

Posted

技术标签:

【中文标题】仅从csv文件c#中读取特定列[重复]【英文标题】:Reading only specific columns from csv file c# [duplicate] 【发布时间】:2021-11-11 13:29:11 【问题描述】:

我正在尝试从 csv 文件中保存特定列的值。我想从该列中获取最大的数字并将其保存在一个变量中。我正在尝试这段代码,但问题是某些字段中有逗号,我无法获得正确的值。

var columnQuery =  
        from line in strs  
        let elements = line.Split(',')  
        select Convert.ToInt32(elements[12]);  

var results = columnQuery.ToList();  

int max = results.Max();    

【问题讨论】:

也许你应该使用 csv 解析器。 【参考方案1】:

有些字段有逗号

那么你显然不能像那样使用幼稚的拆分。自己解析行并不难,跟踪引号(对于包含逗号的字段,这是 csv 格式所必需的),但只需导入 csv 解析器 nuget 并使用它就容易得多。

【讨论】:

以上是关于仅从csv文件c#中读取特定列[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 pandas 读取 csv 文件时删除特定列?

逐列读取 CSV 文件

PowerShell - 从 csv 文件读取数据,比较特定列中的数据并将结果写入新文件

从 csv 文件中读取数据需要很长时间 [重复]

在 C# winforms 中读取 csv 文件时出现数据错误

当我使用 pandas 读取 .csv 中的特定列时,奇怪的跳转