控制台中的行没有填满可用空间

问题描述 投票:0回答:1

在我的程序中,我将数据从锯齿状数组写入控制台(每行1个数组),为了更好的可读性,我在每个数字后面都放了一个标签,但现在线条在15个数字之后断开,尽管有足够的空间。

这是打印它的代码:

static void PrintAbfüllmengen(int[][] Abf30Tage)
{
    for (int j = 0; j < Abf30Tage.Length; j++)
    {
        if (j % 2 == 0)
        {
            Console.ForegroundColor = ConsoleColor.Green;
        }
        else
        {
            Console.ForegroundColor = ConsoleColor.White;
        }
        for (int k = 0; k < Abf30Tage[j].Length; k++)
        {
            Console.Write(Abf30Tage[j][k] + ",\t");
        }
        Console.WriteLine();
    }
}

我能以任何方式解决这个问题吗?

c# console-application
1个回答
3
投票

看来你的控制台有120个字符宽度。如果我们假设您的数组项的最大值是9999,以及逗号和空格的空间,那么您可以在一行中匹配120 /(4 + 2)= 20个数字。但是你的阵列有24个项目。您必须在编写之前扩展控制台宽度,并使用格式Console.Write("{0,4}, ", Abf30Tage[j][k])。或者甚至可能更复杂地跳过最后一个逗号,比如Console.WriteLine(String.Join(",", Abf30Tage[j].Select(x => x.ToString().PadLeft(5))))而不是整个for循环。

如果您想要“漂亮”查看数据,控制台不是一个好的选择。因此要么不试图使它漂亮,要么改变到Windows环境,或者遭受“我只是想在控制台中使它变得漂亮”的痛苦。

© www.soinside.com 2019 - 2024. All rights reserved.