3

调试时,我不断地从 Windows 应用程序模式切换到控制台模式。如果我的应用程序处于 Windows 模式,Console.Read 和 Console.ReadLine 会等待用户输入吗?

4

2 回答 2

2

在 Windows 应用程序中,Console.Read将始终返回 -1,Console.ReadLine将返回nullReadToEnd将返回string.EmptyPeek并将返回-1

这是因为Console该类将自动安装一个自定义StreamReaderConsole.In因此这些调用避免出现问题。

于 2012-06-09T00:44:18.710 回答
1

不,他们不会。他们会表现得好像他们不存在一样。不过需要注意的一点是,ReadKey会抛出一个异常,而不是像其他两个一样忽略它。如果您需要检查您是否在控制台中,请查看此问题

于 2012-06-09T00:24:06.657 回答