前端之家收集整理的这篇文章主要介绍了
在C#中捕获标准输出的内容,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用外部库(.dll),其中一些
方法(
包括构造
函数)将
内容写入标准
输出(a.k.a控制台),因为它旨在与控制台应用程序一起使用.但是我试图将它合并到我的
Windows窗体应用程序中,所以我想捕获此
输出并以我喜欢的方式
显示它.即我的窗口中的“状态”文本字段.
我能找到的只是ProcessStartInfo.RedirectStandardOutput,虽然它显然不符合我的需要,因为它在示例中与其他应用程序(.exe)一起使用.我没有执行外部应用程序,我只是使用DLL库.
创建一个StringWriter,并为其设置标准
输出.
StringWriter stringw = new StringWriter();
Console.SetOut(stringw);
现在,打印到控制台的任何内容都将插入到StringWriter中,您可以通过调用stringw.ToString()随时获取其内容,这样您就可以执行类似textBox1.AppendText(stringw.ToString()); (因为你说你有一个winform并有一个状态文本字段)来设置文本框的内容.
原文链接:https://www.f2er.com/csharp/243125.html