【发布时间】:2012-11-30 00:12:34
【问题描述】:
编辑代码
包含我要反转的行的文本文件包含这些数字:
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100
到目前为止,我的数组如下所示:
static void Main()
{
int numbers;
StreamReader fileReader = new StreamReader(fileDirectory);
string line = fileReader.ReadLine();
fileReader.Close();
string[] Split = line.Split();
int.TryParse(line, out numbers);
int[,] Table = new int [10,10];
for (int row = 0; row < Table.GetUpperBound(0); row++)
{
for (int column = 0; column < Table.GetUpperBound(0); column++)
{
}
}
for (int row = 0; row < Table.GetUpperBound(0); row++)
{
for (int column = 0; column < Table.GetUpperBound(0); column++)
{
int tempHolder = Table[row, column];
Table[row, column] = Table.GetUpperBound(0);
Table[row, Table.GetUpperBound(0) - column] = tempHolder;
Console.WriteLine(Table[row, column]);
Console.Write(" ");
}
Console.WriteLine();
}Console.Write(" ");
}
您能帮我将 int numbers 变量添加到数组中,然后我将尝试反转。现在,如果我运行它,我会得到大约 24 行的数字 9。还有人可以告诉我如何做一个 2d 数组而不必指定它的大小吗?我在网上看过,但不知道怎么做。谢谢
【问题讨论】:
-
简单的解决方案是计算有多少行。根据该信息创建一个正确大小的数组,并向后循环遍历空数组。我建议您尝试这种方法并根据该代码提出任何问题。您甚至不会尝试填充数组。
-
我 ninja 编辑了评论以排除大约 10 x 10 的 cmets,因为 mnel 的编辑说明了这一点。当然,您将面临的问题是创建正确大小的数组。这个问题当然有解决办法。您只需使用整数数组即可。
-
如果您尝试反转每行或整个文件的数字,我不清楚。如果是每一行,那么您不需要像@Ramhound 建议的那样计算行数。在
line = fileReader.ReadLine()之后,只需按空格分割行,将其放入数组中并向后读取数组 -
我想我应该发布我的填充尝试,但我尝试了许多不同的方法,但都失败了,这就是为什么我在这里寻求帮助,但我会在这个问题中提出我的最后一次尝试跨度>
-
我正在尝试按每行反转数字
标签: c# arrays for-loop text-files reverse