有时候我们需要使用cmd显示某个utf-8编码的文本,这时候就需要设置cmd的代码页为65100。

也就是 chcp 65001 这条命令。这样设置可以临时生效。

如何要永久生效,需要在注册表中修改。

HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe

设置此路径名为 CodePage 项(DWORD32位值) ,值为十进制 65100。

以下是一些字符集:我们常用的是默认的 936 简体中文 和 65100 的 utf-8 。

1257 波罗的语
1256 阿拉伯语
1255 希伯来语
1254 土耳其语
1253 希腊语
1252 拉丁 1 字符 (ANSI)
1251 西里尔语
1250 中欧语言
950 繁体中文
949 朝鲜语
936 简体中文(默认)
932 日语
874 泰国语
850 多语种 (MS-DOS Latin1)
437 MS-DOS 美国英语

但是,切换为 utf-8 的代码页之后,又出来了新的问题。

首先是命令的返回信息变为英文的了。比如对比一下与之前的提示:活动代码页 和 Active code page 

这就让英文不好的我们尴尬了。

然后接着的问题是,大家继续对比上图,我的输入法状态是中文五笔,可是依然不能输入中文。有网上说是因为系统没有启动 conime.exe 进程,我下载了这个进程,放在相应的目录,无论是通过点击还是启动 cmd 都没有把这个进程运行起来,始终没有解决方案,只能换回 936 ,才能输入中文。哪位高手知道如何解决,愿留言相告,感激不尽。

当然,utf-8下的问题还没完,虽然可以显示 utf-8 编码的文本了。但是在目录的切换过程中,却又出来了新的问题。

注意看图中的光标, 两个中文字符的时候,光标在第一个字的后面一点,再继续输入几个中文,光标越来越偏。这时候你还能好好的输入命令吗?别说大多都有完全主义+强迫症的朋友了,比如我。

最后再上一张图,大家猜这是什么情况?

可能你没想到,我用cd退回上层目录后,在再后面输入了中文,输入的中文字符我也不知道有没有输入进去。只知道返回一条:

The system cannot write to the specified device.

我输入了什么?中文呀。那为什么会这样?

细心的你可能还没发现,上面这张图和之前的图片上的字体有点不一样。

是的,在输入中文之前我还更改了字体:

我想问:难道点阵字体不支持中文显示?如果不支持显示的话为什么上面那一行的“简历”两个字能显示呢?

为什么?

附:从注册表设置 Lucida Console 字体 。

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
"CodePage"=dword:0000fde9
"WindowSize"=dword:00180050
"FontSize"=dword:000c0000
"FontFamily"=dword:00000036
"FontWeight"=dword:00000190
"FaceName"="Lucida Console"

最后:

我希望国家赶快繁荣昌盛,然后那些钱多到用来支持国外企业,多到用来刷女主播……的人,施舍点给国产计算机行业做发展吧。

对中文的支持,还得靠国人自己呀。

本文来源:http://www.cnblogs.com/daysme/p/6661298.html

cmd中utf-8编码的问题的更多相关文章

  1. Windows下的cmd命令行中设置环境编码

    我们都知道,Windows下的cmd命令行默认编码是Windows系统的编码,就是ANSI编码或者说是GBK编码的,这样我们编写的很多应用比如php编写utf-8编码的应用在命令行下面运行时都会出现乱 ...

  2. 【python之路2】CMD中执行python程序中文显示乱码

    在IDLE中执行下面代码,中文显示正常: # -*- coding:utf-8 -*- st=raw_input("请输入内容")print st 但在CMD中执行e:\hello ...

  3. Mapreduce中的字符串编码

    Mapreduce中的字符串编码 $$$ Shuffle的执行过程,需要经过多次比较排序.如果对每一个数据的比较都需要先反序列化,对性能影响极大. RawComparator的作用就不言而喻,能够直接 ...

  4. java中的字符编码方式

    1. 问题由来 面试的时候被问到了各种编码方式的区别,结果一脸懵逼,这个地方集中学习一下. 2. 几种字符编码的方式 1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符 ...

  5. 记录自己在 cmd 中执行 jar 文件遇到的一些错误

    记录自己在 cmd 中执行 jar 文件遇到的一些错误 场景: 请求接口,解析接口返回的 JSON 字符串并插入到我们的数据库里面. 情况: 项目在 eclipse 中正常运行,打成 jar 包后在 ...

  6. 在CMD中操作mysql数据库出现中文乱码解决方案

    百度了一下..有说将cmd字符编码用chcp命令改为65001(utf8字符编码),可这样之后根本无法输入中文,查询出的中问结果依旧乱码 其实,只要保证cmd客户端和MySQL两者编码一致即可. 但现 ...

  7. 在Vim中查看文件编码和文件编码转换

    在Vim中查看文件编码和文件编码转换 风亡小窝 关注  0.2 2016.09.26 22:43* 字数 244 阅读 5663评论 0喜欢 2 在Vim中查看文件编码 :set fileencodi ...

  8. 在cmd中使用doskey来实现alias别名功能

            作为一枚网络工程师,经常就是面对一堆黑框框,也是就是终端.不同操作系统.不同厂家的目录,功能相同但是键入的命令又大不相同,这些差异化容易让脑子混乱.比如华为.思科.H3C.锐捷的设备, ...

  9. php和js中json的编码和解码

    php中 1)编码 $jsonStr = json_encode($array) 2)解码 $arr = json_decode($jsonStr) <?php echo json_encode ...

随机推荐

  1. Linux 软件安装卸载命令

    安装方式一: RPM 命令 rpm -qa|grep java  查看java 是否安装 rpm -e --nodeps  软件名   卸载已安装软件 rpm -ivh xxx.rpm   安装 安装 ...

  2. GUI常用对象介绍2

    %示意line对象的用法 hf=figure; hl=plot([:]); %示意line对象的属性 get(hl) %设置line的颜色 set(hl,'Color','r'); %设置每个点形状 ...

  3. hihoCoder #1037 : 数字三角形 (动态规划)

    题目链接:https://hihocoder.com/problemset/problem/1037# 问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋 ...

  4. 听 Fabien Potencier 谈Symfony2 之 《What is Dependency Injection ?》

    听 Fabien Potencier 谈Symfony2 之 <What is Dependency Injection ?>   什么是依赖注入?从PHP实现角度来分析依赖注入,因为PH ...

  5. scss简单用法

  6. Kattis之旅——Inverse Factorial

    题目意思就是已知n的阶乘,求n. 当输入的阶乘小于10位数的时候,我们可以用long long将字符串转化成数字,直接计算. 而当输入的阶乘很大的时候,我们就可以利用位数去大概的估计n. //Asim ...

  7. uwsgi xml 配置

    uwsgi 用来做nginx和应用之间的桥梁,负责接收nginx动态转发过来的用户请求,其配置方式有多种,我一般选择<xml>标签的形式 下面的这些配置仅限于ubuntu下用apt-get ...

  8. Yii1使用Gii生成模块实现CURD

    Yii里Gii的强大就不用说了,可以快速生成模块的Model.Controller来开发.要使用Gii,首先你需要创建好操作的数据表. 第一步:创建数据表 CREATE TABLE `t_knowle ...

  9. Golang切片的三种简单使用方式及区别

    概念 切片(slice)是建立在数组之上的更方便,更灵活,更强大的数据结构.切片并不存储任何元素而只是对现有数组的引用. 三种方式及细节案例 ①定义一个切片,然后让切片去引用一个已经创建好的数组 pa ...

  10. 【Selenium专题】元素定位之CssSelector

    CssSelector是我最喜欢的元素定位方法,Selenium官网的Document里极力推荐使用CSS locator,而不是XPath来定位元素,原因是CSS locator比XPath loc ...