[英]CSV file read, then sort, then use array again
请在这种情况下提供任何帮助.. C#的新手。
摘要:
范例csv:
Company,Item,Vendor
Comp1,Bulb,BnQ
Comp2,Plug,Tesco
Comp1,Kettle,Wickes
这是我的尝试,但是尝试访问sorted [j]时出现以下错误,我无法解决此问题。
无法将带有[]的索引应用于类型'System.Collections.Generic.IEnumerable的表达式
码:
var csvRows = System.IO.File.ReadAllLines(filename).Skip(1);
var sorted = csvRows.Select(line => new
{
SortKey = Int32.Parse(line.Split(',')[0]),
Line = line
})
.OrderBy(x => x.SortKey)
.Select(x => x.Line);
int maxCount = sorted.Count();
for (int j = 0; j < maxCount; j++)
{
string line1 = sorted[j].ToString();
var values = line1.Split(',');
...
您需要在LINQ查询的末尾添加.ToList()
或.ToArray()
,否则已排序的变量是IEnumerable而不是列表或数组,因此无法使用索引访问它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.