c# process standardoutput
时间: 2023-07-27 18:05:47 浏览: 260
在 C# 中,可以使用 `Process` 类来启动一个外部进程,并且通过 `StandardOutput` 属性来获取该进程的标准输出流。下面是一个简单的示例代码:
```csharp
using System;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
Process process = new Process();
process.StartInfo.FileName = "cmd.exe";
process.StartInfo.Arguments = "/c dir";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.Start();
string output = process.StandardOutput.ReadToEnd();
Console.WriteLine(output);
process.WaitForExit();
}
}
```
上面的代码会启动一个命令行窗口,并且执行 `dir` 命令来列出当前目录的文件和子目录。然后通过 `StandardOutput` 属性来获取该进程的标准输出流,并将其输出到控制台上。
需要注意的是,在使用 `RedirectStandardOutput` 属性时,必须将 `UseShellExecute` 属性设置为 `false`,否则会出现异常信息。另外,还需要调用 `WaitForExit` 方法来等待进程退出,否则可能会出现输出不完整的情况。
阅读全文