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

时间:2018-09-03 12:17:39

标签: c# console-application

在我的程序中,我将数据从锯齿状的数组写到控制台(每行1个数组),并且为了更好的可读性,我在每个数字后面都放了一个制表符,但是现在行会在15个数字之后中断,尽管足够的空间。

Lines not going to the edge

这是打印它的代码:

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();
    }
}

有什么办法可以解决这个问题?

1 个答案:

答案 0 :(得分:3)

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

如果要查看数据的“漂亮”,控制台不是一个好选择。因此,要么不要尝试使其美观,要么不要更改为Windows环境,要么遭受“我只想在控制台中使其美观”的痛苦。