Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在我的 C# 输出中使用 ANSI/VT100(在 Linux/Mono PC 上)。但
string colorme = @"\e[31mHello World\e[0m"; Console.WriteLine(colorme);
只是在 bash 中产生纯文本输出(我使用的是单声道)。\e[31m是否可以在单声道上使用 C# consolw 程序中的颜色代码?
\e[31m
Console.ForegroundColor并且Console.BackgroundColor不适用于单声道和我的控制台,所以我被迫使用 ANSI 着色。
Console.ForegroundColor
Console.BackgroundColor
主要问题是 C# 不知道如何解释\e转义码。由于\e实际上表示\x1B我们可以使用 unicode 转义码。
\e
\x1B
string colorme = "\x1b[31mHello World\x1b[0m"; Console.WriteLine(colorme);