如果有人向哪里发送垃圾邮件,如何摆脱 ReadKey() 问题?

How to get rid of the ReadKey() que if a person where to spam a key?

我的控制台应用程序在整个代码中使用 ReadKeys;如果一个人在 ReadKey 未激活时说点击一个键,我推测它会被添加到各种问题中,所以当代码到达 readKey 时,它会立即继续按下 previus 按键并继续,就好像那个键一样被按下。 有办法解决这个问题吗?

编辑:澄清一下,轴向按键会影响尚未 运行

的 ReadKeys

您可以检查输入流中是否有可用的键,然后读取下一个键。

可以在这里找到一个很好的解决方案:Clear Console Buffer

另一个类似的解决方案:https://newbedev.com/csharp-c-console-clear-input-buffer-code-example

// while there are characters in the input stream 
while(Console.KeyAvailable) 
{
    // read them and ignore them
    Console.ReadKey(false); // true = hide input
}
// Now read properly the next available character
Console.ReadKey();