无法将特殊字符打印到控制台

时间:2015-02-20 16:52:36

标签: c#

当我尝试输出“ᕦ(͡°͜ʖ͡°)ᕤ”来控制它时,它只是一堆问号。

我试过搞乱System.Console.OutputEncoding但没有成功。

如何实现打印“ᕦ(͡°͜ʖ͡°)ᕤ”的最重要目标。

1 个答案:

答案 0 :(得分:2)

这种方法运作得相当好(如:形状更容易识别):

Console.OutputEncoding = Encoding.Unicode;
Console.WriteLine("ᕦ( ͡° ͜ʖ ͡°)ᕤ");
Console.ReadLine();

您需要将控制台的默认字体更改为consolas。将字体更改为Consolas,它看起来像:

Screenshot / proof

使用默认字体,它看起来像:

Screenshot / proof

如果您更改字体但未设置输出编码,则显示如下:

Screenshot / proof

控制台的默认编码为OEM Multilingual Latin 1; Western European (DOS),例如" IBM850"或OEM United States例如" IBM437"

但是,正如其他评论中所建议的那样:不要。只是不要。 Here's why