在彼此下面显示数据

本文关键字:显示 数据 | 更新日期: 2023-09-27 17:54:02

如何循环遍历一个数据表,以便一行一行地整齐地显示在另一行下面?

我所尝试的是如下,但像这样所有的数据显示在一个列中。

foreach (DataRow row in myTopTenData.Rows)
            {
                foreach (DataColumn col in myTopTenData.Columns)
                {
                    Console.Write(row[col].ToString() + " ");
                    Console.WriteLine();
                }
            }

在彼此下面显示数据

foreach (DataRow row in myTopTenData.Rows)
    {
        foreach (DataColumn col in myTopTenData.Columns)
            Console.Write(string.Format("{0, -10}", row[col].ToString()));
        Console.WriteLine();
     }

string.Format"{0, -10}"将帮助您对齐列(左对齐使用负值,右对齐使用正数,当然10是一个任意值)。

您可以使用这个小小的Linq查询和String.Join:

var allFields = myTopTenData.AsEnumerable()
      .Select(r => string.Join(Environment.NewLine, r.ItemArray));
string allFieldsLines = string.Join(Environment.NewLine, allFields);
Console.Write(allFieldsLines);
下面是带有循环的非linq版本:
foreach (DataRow row in myTopTenData.Rows)
    Console.Write(string.Join(Environment.NewLine, row.ItemArray) + Environment.NewLine);

你为什么不试试这个呢:

foreach (DataRow row in myTopTenData.Rows)
{
    foreach (DataColumn col in myTopTenData.Columns)
    {
        Console.Write(row[col].ToString() + " ");
    }
    Console.WriteLine();
}