2

我想在我的 C# 输出中使用 ANSI/VT100(在 Linux/Mono PC 上)。但

string colorme = @"\e[31mHello World\e[0m";
Console.WriteLine(colorme);

只是在 bash 中产生纯文本输出(我使用的是单声道)。\e[31m是否可以在单声道上使用 C# consolw 程序中的颜色代码?

4

1 回答 1

0

Console.ForegroundColor并且Console.BackgroundColor不适用于单声道和我的控制台,所以我被迫使用 ANSI 着色。

主要问题是 C# 不知道如何解释\e转义码。由于\e实际上表示\x1B我们可以使用 unicode 转义码。

string colorme = "\x1b[31mHello World\x1b[0m";
Console.WriteLine(colorme);
于 2022-01-19T21:20:16.663 回答