Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#中读取三个文本文件并将其排序为三行锯齿状数组?_C#_.net_Winforms_Jagged Arrays - Fatal编程技术网

如何在C#中读取三个文本文件并将其排序为三行锯齿状数组?

如何在C#中读取三个文本文件并将其排序为三行锯齿状数组?,c#,.net,winforms,jagged-arrays,C#,.net,Winforms,Jagged Arrays,我的C#项目是一个Windows窗体。 在我的bin/debug文件夹中,我有三个文本文件,其中包含单独班级部分的考试分数 这是我真正需要帮助的部分:我需要将文件存储在一个按节划分的三行锯齿数组中 最后,使用锯齿状数组,我需要在文本框中显示这些计算: 每个部分的平均分数 所有部分的平均分数 所有组别中得分最高的 所有部分的最低分数 第1.txt节: 87 93 72 98 65 70 89 78 77 66 92 72 第2.txt节: 71 98 93

我的C#项目是一个Windows窗体。

在我的bin/debug文件夹中,我有三个文本文件,其中包含单独班级部分的考试分数

这是我真正需要帮助的部分:我需要将文件存储在一个按节划分的三行锯齿数组中


最后,使用锯齿状数组,我需要在文本框中显示这些计算:

每个部分的平均分数

所有部分的平均分数

所有组别中得分最高的

所有部分的最低分数


第1.txt节:

 87
 93
 72
 98
 65
 70
 89
 78
 77
 66
 92
 72

第2.txt节:

 71
 98
 93
 79
 84
 90
 88
 91

第3.txt节:

 88
 81
 56
 72
 69
 74
 80
 66
 71
 73

首先,在bid/debug文件夹中存储了三个文本文件

Section1.txt、Section2.txt、Section3.txt

您可以获取此文本文件路径。对吗? 因此,您可以将此文本文件路径存储到字符串数组

第二:通过循环这个字符串数组,可以从每个文本文件中获取数据

您可以通过使用“空格”或“\n”拆分字符串数据来获得第1节字符串数组;在Linq的帮助下,这很容易:

现在,让我们看一个文件,而是它们的集合:


我想你应该先将文件路径存储到数组,然后通过数组循环读取文件数据。@Jze我真的需要帮助格式化数组。是的,我还需要有人在我遇到困难时为我编写代码。大问题,我告诉你。。。不,说真的,到目前为止你试过什么?(请记住,这里的人很乐意帮助您编写代码,但他们通常不喜欢为您编写代码……@elgonzo我将它们放入了一个锯齿状数组中,我只是不知道如何将数组格式化为三行。我只是把所有的信息都记下来以备不时之需。对不起,不清楚你想要什么。你说的是争吵?几排?什么的?我让你用“WinForms”标记你的问题。但是如果你说“格式化数组”并提到“行”,你到底在说什么呢?显示迄今为止您在“将数组格式化为行”方面所做的代码。。。
using System.IO;
using System.Linq;

...

string path = @"C:\MyFile1.txt";

int[] result = File
  .ReadLines(path)
  .Select(line => int.Parse(line))
  .ToArray(); 
string[] filePaths = new string[] {
  @"C:\MyFile1.txt",
  @"C:\MyFile2.txt",
  @"C:\MyFile3.txt",
};

int[][] result = filePaths
  .Select(path => File //The inner code looks familiar, right?
    .ReadLines(path)
    .Select(line => int.Parse(line))
    .ToArray()) 
  .ToArray();