C#和Node.js控制台输出之间有什么区别?
我正在使用C#中的C#和Node.js控制台输出之间有什么区别?,c#,node.js,cmd,console-application,console.log,C#,Node.js,Cmd,Console Application,Console.log,我正在使用C#中的ConsoleAPI,并在尝试使用Console命令更改颜色时发现Node.js中的ConsoleAPI之间存在差异(`\x1B[31m'): 使用Node.js执行以下代码: console.log("\x1B[31mTeste"); 打印此文件: 当我使用此C#代码时: 我得到这个输出: 为什么会有这种差异?节点用于模拟ANSI控制台。普通windows控制台不支持这一点,因此尝试从C#执行此操作将不起作用。节点用于模拟ANSI控制台。普通windows控制台不
Console
API,并在尝试使用Console命令更改颜色时发现Node.js中的Console
API之间存在差异(`\x1B[31m'):
使用Node.js执行以下代码:
console.log("\x1B[31mTeste");
打印此文件:
当我使用此C#代码时: 我得到这个输出:
为什么会有这种差异?节点用于模拟ANSI控制台。普通windows控制台不支持这一点,因此尝试从C#执行此操作将不起作用。节点用于模拟ANSI控制台。普通windows控制台不支持这一点,因此尝试从C#执行此操作将不起作用。是的,我知道x1B[31m是终端更改颜色的代码。我不明白为什么c#不能处理这个问题。(我将编辑我的问题以使其更清楚)@KeithNicholas他在那里使用AnsiCon..我在使用Windows中的默认cmd我知道..但是node模拟控制台,所以您需要在控制台中执行相同的操作。写入..node使用是的,我知道x1B[31m是终端更改颜色的代码..我只是不明白为什么c不使用这个。(我将编辑我的问题以使其更清楚)@KeithNicholas他在那里使用AnsiCon..我在使用Windows中的默认cmd我知道..但是node模拟控制台,所以您需要在控制台中执行相同的操作。写入..node在Windows 10中使用控制台支持虚拟终端序列,但必须首先通过WinAPI
GetConsoleMode
和SetConsoleMode启用
。在旧版本中,您可以使用ANSICON或ConEmu,它们使用DLL注入来钩住WinAPI控制台函数,如WriteConsole
。Windows 10中的控制台支持虚拟终端序列,但必须首先通过WinAPIGetConsoleMode
和SetConsoleMode
启用。在旧版本中,您可以使用ANSICON或ConEmu,使用DLL注入钩住WinAPI控制台函数,如WriteConsole
。
Console.Write("\x1B[31mTeste");