我做了一个简单的例子,根据输入键我在控制台上写了不同的消息。问题是,每次我读取一个密钥时,下一个Console.WriteLine()
结果都会出现一个' a'符号在一开始就连接在一起?这是一个例子:
ConsoleKeyInfo keyInfor = Console.ReadKey();
if (keyInfor.Key == ConsoleKey.UpArrow)
{
Console.WriteLine("Up arrow");
}
单击向上箭头时的预期结果:"向上箭头"
实际结果:" aUp arrow"
答案 0 :(得分:6)
对我来说它显示了一个空间。请注意,Console.ReadKey()
的说明是:
获取用户按下的下一个字符或功能键。 按下的键可选择显示在控制台窗口中。
如果要禁用它,请执行
ConsoleKeyInfo keyInfor = Console.ReadKey(true);
这样就不会有任何关键的输出。
请注意,如果您重定向程序的输出,则会发现空格不是空格,而是NUL
字符(\0
)