LINQPAD - 读入csv并将列存储到列表中

时间:2014-03-13 16:38:20

标签: linq csv linqpad

基本上我有一个csv的格式如下所示:

csv有11列,前五个,后五个完全相同。 我希望能够读入csv并将第一列和第五列(Period和Payout)的所有实例存储在它们具有值的列表中,并对另一列表中的第六列和第十一列执行相同操作。

这样做的目的是比较不同列表之间匹配的付款。 任何帮助都表示赞赏。

Period,IndexId,Id,Date,Payout,,Period,IndexId,Id,Date,Payout    
,,,,,,109,75,80010081,03-Sep-2016 05.28.37,239073.74999996735    
,,,,,,202,75,80044661,21-May-2013 06.49.16,3.0170290500000052E7    
,,,,,,8505,75,80035051,28-May-2013 03.32.41,8835437.250000026    
109,128,80010081,03-Sep-2016 05.28.37,239073.749999967,,,,,,    
202,128,80044661,21-May-2013 06.49.16,3.01702905000001E7,,,,,,    
934,128,80041031,13-Oct-2015 20.22.03,1.55494005E7,,,,,,

1 个答案:

答案 0 :(得分:4)

试试这个:

var values = File.ReadLines(path).Skip(1)
      .Select(x => x.Split(','))
      .Where(x => x[0] != string.Empty)
      .Select(x => new { Period = x[0], Payout = x[4] })
      .ToList();