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

好久不见. 提交于 2019-11-27 11:57:27

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

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

C:\Users\002778\Desktop>type abc.sql
USE Abc;
 
INSERT INTO `School` VALUES
(1,'鍖椾含澶у','鍖椾含甯備腑鍏虫潙鍖楀ぇ琛?7鍙?,'01062752114','鐜嬫仼鍝?),
(2,'娓呭崕澶у','鍖椾含甯傛捣娣€鍖轰腑鍏虫潙澶ц','01062785001','闄堝悏瀹?),
(3,'鍗椾含澶у','姹熻嫃鐪佸崡浜競榧撴ゼ鍖烘眽鍙h矾22鍙?,'02583593186','闄堥獜'),
(4,'涓浗浜烘皯澶у','鍖椾含甯傛捣娣€鍖轰腑鍏虫潙澶ц59鍙?,'01062514305','闄堥洦闇?),
(5,'鍘﹂棬澶у','绂忓缓鐪佸帵闂ㄥ競鎬濇槑鍗楄矾422鍙?,'05922186110','鏈卞磭瀹?);


那如何让cmd可以显示这些UTF8编码的字符呢?这里需要先了解些相关内容:

chcp命令

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

C:\Users\002778\Desktop>chcp /?
显示或设置活动代码页编号。
CHCP [nnn]
  nnn   指定代码页编号。
不带参数键入 CHCP 以显示活动代码页编号。

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



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

UTF8编码

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

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

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的字符了。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!