我想提取程序中两个特定点之间出现的控制台输出部分,并将其存储到变量中。这将在循环中执行多次。无需将输出回显到常规控制台中(如果这样可以提高效率)。
IE
foreach (Procedure p in procedures) {
BeginCapturingConsoleOutput();
p.Execute();
string procedureOutput = EndCapturingConsoleOutput();
}
MSDN 中此页面上的代码可以满足我的需求:http: //msdn.microsoft.com/en-us/library/16f09842.aspx
基本上,它将输出流设置为您定义的内容(在示例中为文件),执行一些操作,最后将其设置回标准输出流。