【发布时间】:2011-04-11 13:42:11
【问题描述】:
我在 C# 中使用 ConsoleKeyInfo,但是当我尝试在控制台中写入大于 9 的数字时遇到 Console.ReadKey 问题,例如
ConsoleKeyInfo number;
Console.Write("Write a number: ");
number = Console.ReadKey();
如果我想写 10 或 11...控制台只读取“1”
我不想使用 Console.ReadLine,因为我不想为每个数字按“Enter”。
还有其他方法可以使用 Console.ReadKey 等待 1 秒再继续吗?
谢谢
【问题讨论】:
-
您可以输入
10<Enter>(只能输入一个Enter)并使用ReadLine阅读。你可以吗? -
对,因为
ReadKey只读取一个单个键。除非您按下一个键来指示,否则计算机如何知道您已完成输入数字?以前叫“Any”键,现在叫“Enter”。 -
Console.Readkey 根据定义只读取一个字符。来自 MSDN:'...获取用户按下的下一个字符或功能键'。
-
那你怎么知道一个数字已经输入完毕?
-
@elmer:告诉我们你想要做什么。解释为什么 ReadLine 不会削减它,那 1 秒的延迟是什么,以及为什么您认为 ReadKey 会有所帮助。帮助我们帮助您。
标签: c# .net console console.readkey