在C#中,使用ProcessStartInfo
類可以輕松地處理進程的輸入、輸出和錯誤重定向。以下是如何設置這些重定向的示例:
using System;
using System.Diagnostics;
using System.IO;
class Program
{
static void Main()
{
// 創建一個新的ProcessStartInfo實例
ProcessStartInfo startInfo = new ProcessStartInfo
{
FileName = "your_executable.exe", // 要運行的程序的文件名
Arguments = "input_file.txt output_file.txt", // 要傳遞給程序的參數
RedirectStandardOutput = true, // 將標準輸出重定向到文件
UseShellExecute = false, // 不使用系統外殼程序啟動程序
CreateNoWindow = true, // 不創建新窗口
};
// 設置標準輸出重定向的文件流
startInfo.StandardOutput = new StreamWriter("output_file.txt");
// 設置標準錯誤重定向的文件流
startInfo.StandardError = new StreamWriter("error_file.txt");
// 創建一個新的進程實例,并使用ProcessStartInfo設置
using (Process process = Process.Start(startInfo))
{
// 等待進程完成
process.WaitForExit();
}
}
}
在這個示例中,我們創建了一個ProcessStartInfo
實例,設置了要運行的程序文件名、參數以及輸入輸出重定向。我們將標準輸出重定向到output_file.txt
,將標準錯誤重定向到error_file.txt
。然后,我們使用Process.Start()
方法創建一個新的進程實例,并使用ProcessStartInfo
設置。最后,我們等待進程完成。
注意:在這個示例中,我們使用了StreamWriter
來處理輸出和錯誤的重定向。在程序運行完成后,這些文件將包含程序的輸出和錯誤信息。