gpt4 book ai didi

c# - 如何将 C# 输出消息分配给字符串变量?

转载 作者:太空宇宙 更新时间:2023-11-03 23:17:57 26 4
gpt4 key购买 nike

喜欢,能够存储

string val = Console.WriteLine("Hello") 

或等效方式。类型转换似乎也不起作用。

Update::好吧,我想记录 Console.WriteLine() 的任何输出,所以问题是什么是完成它的最佳方法?

最佳答案

var s = "Hello";
Console.WriteLine(s);

Func<string,string> ConsoleWriteLine = input => {Console.WriteLine(input); return input;};

然后

var x = ConsoleWriteLine("Hello"); // x == "Hello" now.

让我问你:为什么?你想达到什么目的?相反,我们可能会帮助您 ;)

编辑:提问者说他​​希望 Console.WriteLine 写入文件(我猜也是)。

完成此操作的一种方法可能是将自定义 TextWriter 设置为 System.Console.Out,如下所述:https://msdn.microsoft.com/en-us/library/system.console.out%28v=vs.110%29.aspx

实际设置是使用 Console.SetOut ( https://msdn.microsoft.com/en-us/library/system.console.setout%28v=vs.110%29.aspx )。

不太疯狂的方法是使用(例如)NLog - 然后只需编写 Log.Info("message") 并同时设置 FileAppender 和 ConsoleAppender :)

在此处检查 NLog:http://nlog-project.org/

来自 https://github.com/NLog/NLog/wiki/Tutorial#multiple-targets 的相关配置示例:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<targets>
<target name="logfile" xsi:type="File" fileName="file.txt" />
<target name="console" xsi:type="Console" />
</targets>

<rules>
<logger name="*" minlevel="Trace" writeTo="logfile" />
<logger name="*" minlevel="Info" writeTo="console" />
</rules>
</nlog>

关于c# - 如何将 C# 输出消息分配给字符串变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36626952/

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