【发布时间】:2021-09-14 06:17:24
【问题描述】:
这是我目前的代码
string filename = @"marks.txt";
try
{
StreamReader reader = new StreamReader(filename);
using (reader)
{
int lineNum = 0;
string line = reader.ReadLine();
while (line != null)
{
lineNum++;
Console.WriteLine("{0}", line);
line = reader.ReadLine();
}
Console.WriteLine(reader.ReadToEnd());
}
}
catch (FileNotFoundException)
{
Console.Error.WriteLine("Can not find the file {0}", filename);
}
catch (DirectoryNotFoundException)
{
Console.Error.WriteLine("Invalid directory in file path.");
}
catch (IOException)
{
Console.Error.WriteLine("Can not open the file {0}", filename);
}
我想要做的是它读取包含一堆标记和名称的文件,并将它们分成两个单独的数组,这样我就可以打印出谁获得了最高和最低分,平均分,还放每个人都超过了某个分数,比如 80,并为他们编写一个新文件。
编辑: 文件大致如下所示,大约有 20 行:
50 Adam
23 Jennifer
85 Sanjay
【问题讨论】:
-
您可以通过更具体地了解“一堆标记和名称”来帮助人们。
-
为了能够帮助您,我们需要查看文件的内容。至少是其中的一部分。或者至少是一个可行的描述。有图案吗?如果是这样,模式是什么?是用于行的分隔符吗?甚至是一行内的元素?所有这些问题你也需要问自己才能解决它
-
如果您打算之后对生成的集合进行排序和过滤,我建议您创建一个自定义类,其中包含文件中信息(名称、标记)的属性。然后,此类的每个实例/对象可以(在拆分后)代表 1 个数据点的信息。