gpt4 book ai didi

c# - 将 Console.WriteLine() 输出重定向到字符串

转载 作者:行者123 更新时间:2023-11-30 20:19:24 27 4
gpt4 key购买 nike

我需要获取 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);

最佳答案

使用 StringWriter :

var sw = new StringWriter();
Console.SetOut(sw);
Console.SetError(sw);
Console.WriteLine("Hello world.");
string result = sw.ToString();

关于c# - 将 Console.WriteLine() 输出重定向到字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38854581/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com