我需要采取Console.WriteLine()
输出,并附加到字符串。我无法更改 Main 方法以简单地附加到字符串而不是写入控制台 - 我需要一种方法来从控制台读取所有写入的行并将它们附加到字符串。
目前,我一直在使用FileStream
并将控制台输出重定向到文本文件中,然后从中读取。
var fs = new FileStream("dataOut.txt", FileMode.Create);
var sw = new StreamWriter(fs);
Console.SetOut(sw);
Console.SetError(sw);
进而Console.WriteLine("whatever")
写入文本文件。但是,我想在不往返文本文件的情况下执行此操作。
这样的事情可能吗?我意识到下面的例子没有。
string outString = "";
Console.SetOut(outString);
Console.SetError(outString);
Use a StringWriter https://msdn.microsoft.com/en-us/library/system.io.stringwriter(v=vs.110).aspx:
var sw = new StringWriter();
Console.SetOut(sw);
Console.SetError(sw);
Console.WriteLine("Hello world.");
string result = sw.ToString();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)