相关疑难解决方法(0)

使用.NET的ANSI着色控制台输出

我尝试使用ANSI转义码生成彩色控制台输出,并使用以下最小C#程序:

using System;

// test.cs
class foo {
    static void Main(string[] args) {
        Console.WriteLine("\x1b[36mTEST\x1b[0m");
    }
}
Run Code Online (Sandbox Code Playgroud)

我在Windows 7 x64上使用csc.exe 运行Ansicon v1.66(Microsoft(R)Visual C#编译器版本4.6.0081.0).

彩色输出在这种配置下工作正常; Ansicon本身运作完美无缺.

要进行交叉检查,我使用一个与C#程序100%等效的node.js单行程序:

// test.js
console.log("\x1b[36mTEST\x1b[0m");
Run Code Online (Sandbox Code Playgroud)

而且,更基本的是手工制作的文本文件:

文本文件hex编辑器截图

两者都正确地做了预期的事情:打印一个青色的字符串"TEST":

在此输入图像描述

只有我用csc构建的test.exe才能打印其他内容.为什么?

.net c# console ansi

8
推荐指数
2
解决办法
5752
查看次数

标签 统计

.net ×1

ansi ×1

c# ×1

console ×1