正如标题所说,当我将控制台窗口调整为某个形状时,调用IOException
时会抛出Console.Clear()
,我不知道为什么。这是我的示例代码:
using System;
using System.Threading;
class Program
{
static void Main()
{
for (int i = 0; ;)
{
Console.Write(i++);
Thread.Sleep(250);
Console.Clear();
}
}
}
这是一个很好的小GIF来演示如何重现这个:
现在,我不知道为什么会发生这种情况,如果它应该发生,更不用说如何解决/阻止这种情况了。谁能解释一下?我非常好奇!
提前致谢。
答案 0 :(得分:0)
问题是你正在尝试清除一个维度为0的控制台。我想清楚的是试图将光标放在左上角位置,因为它不能,它会抛出异常。
您只需在Console.Clear
之前添加支票即可解决:
static void Main()
{
for (int i = 0; ;)
{
Console.Write(i++);
Thread.Sleep(250);
if (Console.WindowHeight>0 && Console.WindowWidth>0)
Console.Clear();
}
}