日期:2014-05-17  浏览次数:20720 次

让Windows命令行显示UTF-8字符

?

一直苦恼于如何在Windows终端中显示UTF-8字符的问题。比如,在MySQL命令行下,如果数据库的编码是UTF-8,那么,在查询数据库的时候,里面的中文都会变成乱码。

今天半无意的搜索了一下,结果发现解决方案非常简单:

1. 修改终端的代码页。

在终端中输入:

chcp 65001

2. 右键点击任务栏上的终端(也可以单击窗口左上角的图标),在快捷菜单中选择属性,在里面选择字体——如 Lucida Console,不要选择“点阵字体”;

确定之后,再次测试UTF-8输出,你看到了什么。 :)

要切换回原来的模式也很简单:

chcp 936

再把字体改成原来的点阵字体就好了。

注意:修改了代码页之后,如果你使用Cygwin,你会发现cygwin的ls —show-control-chars命令遇到中文目录名时会出错。