如何使用 C# 根据文本文件的值显示名称?
How do i display the name base on the value of the text file with C#?
我有一个包含以下数据的文本文件:
- 贾森,155
- 彼得,200
- 五月,320
- 杰克,100
以上文本都在同一个txt
文件中。
我需要将具有最高价值的人的姓名和价值插入到单独的文本框中。我不知道如何使用 StreamReader
.
读取最高值
编辑:这是我用来读取 txt
文件的代码。但我不确定如何编写代码来选择值最高的人显示在文本框中。
string[] Contestants = File.ReadAllLines(filePath);
foreach (var member in Contestants)
{
string[] first = member.Split(',');
string firstTemp = first[0] + "," + first[1];
}
用 streamreader 逐行读取,用“,”分割,然后从字符串中解析整数,会有帮助吗?
这样读
using var fs = new FileStream(path, FileMode.Open, FileAccess.Read);
using var sr = new StreamReader(fs, Encoding.UTF8);
string line = String.Empty;
while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); }
此致
这种方式是读取每一行并使用 Linq 对其进行过滤
var maxRow = File.ReadLines("file.txt")
.Where(line => !string.IsNullOrEmpty(line))
.Select(line => line.Split(','))
.Where(words => words.Length == 2)
.Aggregate((i1, i2) => int.Parse(i1[1]) >= int.Parse(i2[1]) ? i1 : i2);
string name = maxRow[0];
int number = int.Parse(maxRow[1]);
我有一个包含以下数据的文本文件:
- 贾森,155
- 彼得,200
- 五月,320
- 杰克,100
以上文本都在同一个txt
文件中。
我需要将具有最高价值的人的姓名和价值插入到单独的文本框中。我不知道如何使用 StreamReader
.
编辑:这是我用来读取 txt
文件的代码。但我不确定如何编写代码来选择值最高的人显示在文本框中。
string[] Contestants = File.ReadAllLines(filePath);
foreach (var member in Contestants)
{
string[] first = member.Split(',');
string firstTemp = first[0] + "," + first[1];
}
用 streamreader 逐行读取,用“,”分割,然后从字符串中解析整数,会有帮助吗?
这样读
using var fs = new FileStream(path, FileMode.Open, FileAccess.Read);
using var sr = new StreamReader(fs, Encoding.UTF8);
string line = String.Empty;
while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); }
此致
这种方式是读取每一行并使用 Linq 对其进行过滤
var maxRow = File.ReadLines("file.txt")
.Where(line => !string.IsNullOrEmpty(line))
.Select(line => line.Split(','))
.Where(words => words.Length == 2)
.Aggregate((i1, i2) => int.Parse(i1[1]) >= int.Parse(i2[1]) ? i1 : i2);
string name = maxRow[0];
int number = int.Parse(maxRow[1]);