正在检查具有相同数据的一列以读取C#.net中的csv文件
本文关键字:读取 一列 net 文件 csv 中的 检查 数据 | 更新日期: 2023-09-27 17:59:21
我意识到这是一个新手问题,但我正在寻找一个简单的解决方案。
我在DataTable中加载了一个csv文件。让我的CSV包含四列(ColorCode、SirtID、StartDate、EndDate),如下所示:
#ffffff,s0122011/05/012011/05/11#ffffff,s00132011/05/032011/05/10#ffffff,s00222011/06/0122011/06/11#ffffff,s00322011/05/012011/05/12
如果CSV文件包含两个或多个不同的颜色代码,我想返回一条错误消息,如下所示:
#ffffff,s0122011/05/012011/05/11#ffffff,s00132011/05/032011/05/10#ffffff,s00222011/06/0122011/06/11#000000,s00322011/05/012011/05/12
检查CSV文件是否只包含一个ColorCode的最佳方法是什么?
您可以使用LINQ:
var query = myTable.AsEnumerable();
// Assuming there is one value at least.
var first = query.First().Field<string>("ColorCode");
if (query.Any(a => a.Field<string>("ColorCode") != first))
{
throw new Exception();
}
您可以进行
DataTable dt = new DataTable();
.....
....
if(dt.Rows.Count > 0)
if(dt.Select("ColorCode <> " + dt.Rows[0]["ColorCode"].ToString()).Length > 0)
throw new Exception("Two or more different ColorCodes exists");