如何彻底清除Visual Studio控制台窗口?.NET应用清除方案
彻底清除控制台内容(含滚动缓冲区)
使用Console.Clear()只能清除当前控制台可见区域的内容,光标移至顶部,但向上滚动仍能看到之前的输出历史。要实现类似系统cls命令的彻底清除效果,可参考以下方案:
问题复现代码
for (int i = 0; i < 100; ++i) Console.WriteLine(i + ": I'm still here"); Console.Clear(); for (int i = 0; i < 5; ++i) Console.WriteLine(i + ": scroll up!"); Console.ReadKey();
环境说明
- 运行环境:Visual Studio控制台
- 当前框架:.NET Framework 4(可更换任意框架)
最佳实现方案
以下代码可实现近乎完全的清除效果(仅残留首行空白):
Console.Clear(); Console.WriteLine("\x1b[2J"); Console.WriteLine("\x1b[3J"); Console.Clear();
代码说明
Console.Clear():先清除当前可见控制台区域\x1b[2J:ANSI转义序列,清除整个屏幕及缓冲区内容\x1b[3J:ANSI转义序列,彻底清除控制台的滚动历史缓冲区- 最后一次
Console.Clear():将光标重置到控制台首行位置
内容的提问来源于stack exchange,提问作者Bitterblue
相关产品推荐
相关产品推荐

