Console.Clear() 没有清除控制台

Console.Clear() is not clearing the console

(IDE: Jetbrains 骑士)

我正在尝试制作剪刀石头布游戏。 游戏结束后,程序询问玩家是否要 再玩一次。 如果播放器再次播放,它会清除控制台,但这不起作用。

然后我测试了编写一个 while 循环来清除控制台,然后写入一个数字。

我做了一个额外的项目,我在里面写了这个。

namespace Test
{
    
    public class Program 
    {
    
        public static void Main(string[] args)
        {
            double num = 1;
            while (true)
            {
               Console.Clear();
               Thread.Sleep(100);
               Console.WriteLine();
               num += 1;
            }
        }

    }

}

循环是唯一的东西运行。

输出为:


60

71
74

85

93

124
127

162
165

有人知道为什么吗?

我以为是 .Net 5.0 的问题,因为我换成了 .Net Framework 4.8,它成功了。

现在我重启了rider,问题又来了

尝试检查环境是否允许,然后尝试将 Console.Clear() 改为 console.clear()

我用的是VS 2019和.Net 5.0,没问题Console.Clear() 可能存在 IDE 问题。 Jetbrains Rider 有时会出现“错误”。

 class Program
{
    static void Main(string[] args)
    {
        double num = 1;
        while (true)
        {
            Console.Clear();
            Console.WriteLine(num);
            Thread.Sleep(2000);
            num += 1;
        }
    }
}

我可以确认 Console.Clear() 未按预期与 Rider IDE 2021.2 一起工作。请参阅记录的问题 here。 更新到 Rider 2021.3 EAP 3 显然可以解决这个问题

作为变通方法从外部启动控制台window。这在 Rider 中对我有用: