什么是标准输出流?



我的代码看起来或多或少像下面的代码,但它不会从我正在打开的应用程序(记事本)中检索文本。也许我错过了重点。有人可以解释什么是标准输出流,以及如果我想打开应用程序然后检索它显示的文本,它是否是我想使用的?

ProcessStartInfo psi = new ProcessStartInfo("notepad.exe", "c:\test.txt");
psi.RedirectStandardOutput = true;
psi.UseShellExecute = false;
Process p = new Process();
p.StartInfo = psi;
p.Start();
string s = p.StandardOutput.ReadToEnd();

来自维基百科文章:

在计算机编程中,标准流是预连接的输入和 计算机程序与其环境之间的输出通道 (通常是文本终端)开始执行时。三个 I/O 连接称为标准输入 (STDIN)、标准输出 (标准输出)和标准错误(标准错误)。

正如 Joe 所提到的,写入标准输入和输出的信息通常在控制台应用程序之间链接在一起。Windows 应用程序中显示的文本通常不遵循此模式,尽管它们确实有 3 个标准流可供它们使用,但它们通常不会写入它们。

有三个标准流输入输出和错误。 它们主要由控制台程序用于相互发送输入和输出输出。 记事本是一个GUI程序,标准输出和标准的概念并不真正映射。 一个用法示例是dir | fndstr hi在这种情况下,命令 dir 将其输出发送到 fndstr 的标准输入。

标准输出流主要用于控制台输出。例如,如果在python中,你这样做

print('hello world')

它将打印到标准输出流(也称为标准输出)。

若要执行要执行的操作,需要打开在参数中具有位置的记事本,要求用户以某种方式保存文件,然后读取用户保存的文件。

最新更新