gpt4 book ai didi

c# - 如何按行显示多维数组中的值?

转载 作者:行者123 更新时间:2023-11-30 20:02:19 25 4
gpt4 key购买 nike

我创建了一个多维数组:

string[,] array_questions = new string[dt.Rows.Count, dt.Columns.Count];

for (i = 0; i < dt.Rows.Count; i++)
{
for (j = 0; j < dt.Columns.Count; j++)
{
array_questions[i, j] = dt.Rows[i][j].ToString();
}
}

foreach (string number in array_questions)
{
Response.Write(number + "\n");
}

但是它将整个数组显示在一个冗长的行中。如何在 aspx 页面中按行显示它?

最佳答案

你的问题是foreach矩形二维数组的循环将一次返回该数组中的所有 元素。您需要使用索引来访问二维数组的行和列。

遍历每一行并显示每个元素。然后在每一行之后添加段落(新行)。

例子如下:

for (int row = 0; row < array_questions.GetLength(0); row++)
{
for (int column = 0; column < array_questions.GetLength(1); column++)
{
//writing data, you probably want to add comma after it
Response.Write(array_questions[row,column]);
}

//adding new line, so that next loop will start from new line
Response.Write(Environment.NewLine);
}

对于默认的 5 行 10 列数组 int值,我收到了下一张表

0000000000
0000000000
0000000000
0000000000
0000000000

如果您正确填充了 array_questions之前,您应该在页面上收到 TableView 数据,结果为 Response.Write电话。


一个更简洁的解决方案是重用 dt (我假设它是 DataTable ) Rows属性,即 IEnumerable<DataRowCollection> .接下来的代码实现了类似的行为,但方式更简洁,并且您不需要另一个数组。

foreach (var row in dt.Rows)
{
Response.Write(string.Join(", ", row) + Environment.NewLine);
}

将以类似表格的方式打印数据:

0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0

关于c# - 如何按行显示多维数组中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16914979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com