asumming that "demodata.csv" looks like this
42,1,2,3,4,5,6,7
43,7,6,5,4,3,2,1
42,2,3,4,5,6,7,8
44,9,8,7,6,5,4,3
i would suggest something like that
void Main()
{
var records = ProcessMyData(@"c:\temp\demodata.csv");
var filteredRecords =
records.Where(x => x.Value1 != "42");
}
class MyData
{
public string Value1 { get; set; }
public string Value2 { get; set; }
public string Value3 { get; set; }
internal static MyData ParseFromCsv(string line)
{
var c = line.Split(',');
return new MyData
{
Value1 = c[0],
Value2 = c[1],
Value3 = c[2]
};
}
}
private static List<MyData> ProcessMyData(string path)
{
return File.ReadAllLines(path)
.Select(MyData.ParseFromCsv)
.ToList();
}