使用控制台应用程序时,将存储在Console.ReadLine()中输入的所有内容的历史记录。当在控制台提示符下输入内容时,按上/下光标将滚动浏览此历史记录(可以通过按F7查看整个历史记录)。

使用C#,是否有办法禁用此行为或清除已输入内容的历史记录?

为了澄清,Console.Clear()不清除历史记录,仅清除屏幕缓冲区。我想清除命令历史记录。

编辑:在尝试了几种建议的方法以及我自己的一些设计之后,最好的方法是ho1建议的方法。这是不理想的,因为它会弹出另一个控制台窗口,但是它确实清除了历史记录。

最佳答案

编辑:删除了不正确的答案(我对您想要做什么感到困惑),并添加了另一个(希望)更好的答案。

为此,可以使用FreeConsole释放当前控制台,然后使用AllocConsole分配新控制台来实现。我假设那时它不会保留命令行历史记录。

通常,如果您想使用.Net Framework不支持的控制台来进行操作,则可以通过以下MSDN页面进行查找:Console Functions

关于c# - 是否可以通过编程方式清除控制台历史记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3244976/

10-13 06:05