我尝试使用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)
而且,更基本的是手工制作的文本文件:
两者都正确地做了预期的事情:打印一个青色的字符串"TEST":
只有我用csc构建的test.exe才能打印其他内容.为什么?