在cmd窗口中显示UTF-8字符

有这么一个文件,它在Eclipse属性中看到是UTF8编码的,里面包含了中文:shell

可是当在Windows控制台中查看这个文件(为了方便,我将文件拷贝到桌面了)的时候,就是乱码了:windows

那如何让cmd能够显示这些UTF8编码的字符呢?这里须要先了解些相关内容:asp.net

chcp命令字体

chcp是MS DOS中的命令,用来显示或设置活动代码页编号的。用法是:编码

C:\Users\002778\Desktop>chcp /?
显示或设置活动代码页编号。

CHCP [nnn]

  nnn   指定代码页编号。

不带参数键入 CHCP 以显示活动代码页编号。

好比,在默认的cmd窗口中,咱们输入chcp,显示的将相似:
spa

C:\Users\002778\Desktop>chcp
活动代码页: 936

 这里的936表示当前使用的是简体中文(GB2312)编码。更多代码页编号请查阅这里.net

UTF8编码code

你也须要了解编码的一些知识,为了完成支持UTF8的工做,你至少须要知道UTF8代码页的编号:65001。更多关于编码的内容,这里不赘述,请自行查找相关内容。blog

有这两个知识点,接下来,让cmd支持UTF8就变得容易了。ip

1. 运行cmd;

2. 输入 chcp,回车查看当前的编码;

3. 输入chcp 65001,将输出:

Active code page: 65001

C:\Users\002778\Desktop>

4. 若是仅如此,有可能仍是不能支持UTF8的正常显示,你还要在窗体上右键,选择属性,来设置字体。在以前的936当中,是没有Lucida Console这个字体的,可是切换到65001后,就能看到了:

6. 选择Lucida Console并只应用到本窗体,确认,而后再试试:

这样就用cmd成功的显示UTF8的字符了。


参考页面:

http://blog.useasp.net/archive/2012/04/24/how_to_use_UTF8_encoding_in_Windows_CMD.aspx

https://msdn.microsoft.com/en-us/library/windows/desktop/dd317752(v=vs.85).aspx

相关文章
相关标签/搜索