c# - 控制台中的行没有填满可用空间
问题描述
在我的程序中,我将锯齿状数组中的数据写入控制台(每行 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();
}
}
有什么办法可以解决这个问题?
解决方案
看来您的控制台有 120 个字符宽度。如果我们假设您的数组项的最大值是 9999,逗号和空格是空格,那么您可以在一行中放置 120 / (4 + 2) = 20 个数字。但是您的数组有 24 个项目。您必须在编写之前扩展控制台宽度,并使用 format Console.Write("{0,4}, ", Abf30Tage[j][k])
。或者跳过最后一个逗号可能更复杂,比如Console.WriteLine(String.Join(",", Abf30Tage[j].Select(x => x.ToString().PadLeft(5))))
而不是整个for
循环。
如果您想“漂亮”地查看数据,控制台不是一个好的选择。所以要么不要试图让它漂亮,要么改变Windows环境,要么忍受“我只想在控制台中让它漂亮”的痛苦。
推荐阅读
- python - 在 matplotlib 中使用滑块重新缩放图像
- java - Osmdroid 路由:如果起始坐标不在街道上,则路由为直线
- flutter - Flutter测试抛出ListView导致的多个render异常
- kubernetes-helm - Bcrypted 密码作为 helm 图表中的 env 变量
- python - Python登录多重解决方案
- java - COSStream 已关闭,无法读取
- google-apps-script - 有没有办法使用 twitter api 和 google 表格来发推文?
- java - 在 Intellij 中创建时,如何自动生成上述类的版权?
- django - Django - 无法更新 modelForm 上的 input_type
- haskell - Haskell 来自第一原则 Ch5,Ex 7,8