在C#控制台窗口中打印

时间:2011-01-02 15:38:40

标签: c#

我正在尝试在C#控制台窗口中打印1820行。但是,当打印完成并且我查看控制台窗口时,我只能看到300行。这里有什么问题? 当我写入文件时,我可以看到1820行!所以,我已将问题缩小到OUTPUT控制台窗口

3 个答案:

答案 0 :(得分:7)

大多数Windows版本的标准控制台窗口都有有限的缓冲线 - 300行听起来像是一个合理的缓冲区。

当您打开cmd.exe窗口然后右键单击左上角的图标并从上下文菜单中选择Properties时,您可以看到(并更改)该限制:

alt text

您可以增加该缓冲区的大小以提供更多行 - 请记住,当您的控制台窗口打开时,这些行将占用系统中的RAM!

答案 1 :(得分:5)

您可以使用Console.SetBufferSize()使控制台缓冲区更大:

class Program {
    static void Main(string[] args) {
        Console.SetBufferSize(Console.WindowWidth, 2000);
        // etc..
    }
}

- 小额增加 -

如果希望获得最大可能的缓冲区:

 Console.SetBufferSize(Console.WindowWidth, Int16.MaxValue-1);

你不允许任何> = Int16.MaxValue

答案 2 :(得分:3)

调整窗口的缓冲区大小:

  • 单击窗口左上角的图标。
  • 属性
  • 布局
  • 屏幕缓冲区大小
  • 输入高度的最大值:9999

如果您需要更多,那么您需要使用GUI或写入文件并在文本编辑器中查看。