"。我检查了 Console 类的属性,但找不到任何人在做这项工作。作为解决方法,在代码中我在写任何新行之前写了一个-6ren">
gpt4 book ai didi

c# - 如何更改 C# 控制台应用程序的命令提示符

转载 作者:行者123 更新时间:2023-11-30 22:17:05 26 4
gpt4 key购买 nike

我正在构建一个 C# 控制台应用程序,并希望将前奏符号自定义为其他内容,例如 "> "。我检查了 Console 类的属性,但找不到任何人在做这项工作。作为解决方法,在代码中我在写任何新行之前写了一个“>”符号。但这并不是一个完美的解决方案,尤其是当有后台工作线程打印消息时,有时会丢失前奏符号,因为工作线程可能比主线程写前奏更早地写消息。

我在网上搜索但没有找到任何提示,是否有针对此问题的标准解决方案?

最佳答案

如果开箱即用是不可能的,我建议提供一个自定义类,它封装 Console 类,您将在后台线程中使用该类将消息写入控制台。这也将使单元测试更容易。

public class ClassInOtherThread
{
private readonly IConsoleWriter _consoleWriter;

public ClassInOtherThread(IConsoleWriter consoleWriter)
{
this._consoleWriter = consoleWriter;
}

public void DoSomething()
{
_consoleWriter.Write("something");
}
}

public interface IConsoleWriter
{
void Write(string value);
}

public class ConsoleWriter : IConsoleWriter
{
public void Write(string value)
{
// Fix your > problems in this class
Console.Write(value);
}
}

关于c# - 如何更改 C# 控制台应用程序的命令提示符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16956089/

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