我有一个看起来像这样的文本文件:
apples 158
oranges 9
pumpkins 10
我想知道哪一种水果的库存量最高。
var myfile = File.ReadAllLines("c:\\file.txt");
for (int x = 0; x < myfile.Length; x++)
{
var csv = myfile[x].Split(' ');
var fruit = csv(0);
var occurence = double.Parse(csv[1]);
}
此处的输出应为apples
。
是否存在比无限循环更短的方式并与if语句进行比较?
答案 0 :(得分:0)
您可以使用File.ReadLines
和LINQ
在一个语句中执行此操作。我使用int.Parse
代替double.Parse
,因为我认为不能有2,5
库存中的苹果。
var maxFruit = File.ReadLines("path")
.Select(x => x.Split())
.OrderByDescending(x => int.Parse(x[1]))
.Select(x => x[0])
.First();