.NET 中的控制台应用

.NET 应用程序可以使用 System.Console 类在控制台中读取和写入字符。 读取自控制台的数据是从标准输入流读取的,而写入到控制台的数据将写入标准输出流,并且写入控制台的错误数据将写入标准错误输出流。 应用程序启动时,这些数据流会自动与控制台关联,并分别表示为 InOutError 属性。

Console.In 属性的值是 System.IO.TextReader 对象,而 Console.OutConsole.Error 属性的值都是 System.IO.TextWriter 对象。 你可以将这些属性与不表示控制台的流关联,以便可以将该流指向不同的输入位置或输出位置。 例如,你可以通过将 Console.Out 属性设置为 System.IO.StreamWriter 将输出重定向到一个文件,这将通过 Console.SetOut 方法封装 System.IO.FileStreamConsole.InConsole.Out 属性不需要引用相同流。

注意

有关生成控制台应用程序(包括 C#、Visual Basic 和 C++ 中的示例)的详细信息,请参阅 Console 类文档。

如果不存在控制台(比如在 Windows 窗体应用程序中),写入标准输出流的输出将不可见,因为没有可以将信息写入的控制台。 将信息写入不可访问的控制台不会引发异常。 (例如在 Visual Studio 的项目属性页中,你始终可以将应用程序类型更改为“控制台应用程序”)。

System.Console 类具有从控制台读取单独的字符或整行的方法。 其他方法转换数据和格式字符串,然后将设置了格式的字符串写入控制台。 有关设置字符串格式的详细信息,请参阅格式设置类型

提示

控制台应用程序缺少在默认情况下启动的消息泵。 因此,控制台调用 Microsoft Win32 计时器时可能会失败。

另请参阅