小智 65
Console.OutputEncoding = Encoding.UTF8;
Run Code Online (Sandbox Code Playgroud)
Ree*_*sey 10
您可以找到一些可以演示如何将多字节字符集写入控制台的黑客,但它们不可靠.它们需要您的控制台字体支持它,并且通常,我会避免使用它.(如果您的用户不做他们的额外工作,所有这些技术都会中断...因此他们不可靠.)
如果您需要编写Unicode输出,我强烈建议您使用GUI应用程序来处理此问题,而不是使用控制台.制作一个简单的GUI来将输出写入支持Unicode的控件是相当容易的.
小智 7
尝试这个 :
using System.Diagnostics
...
Debug.WriteLine(..);// will output utf-8 charset
Run Code Online (Sandbox Code Playgroud)
小智 5
使用 Console.OutputEncoding 就足够了。.NET 中的所有字符串对象默认都是 unicode,因此将控制台的输出编码更改为 UTF-8 将在现代 Windows 安装中按照您的需要工作。
控制台中的默认编码取决于配置,但很可能是美国语言的 IBM437 或某些本地代码页。