window下cmd显示乱码
Posted !win !
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了window下cmd显示乱码相关的知识,希望对你有一定的参考价值。
前情
最近在维护一些老项目,本地开发环境跑不起来,需要根据cmd中的报错来解决一些环境问题
坑位
在解决环境错误的时候,cmd命令行日志打印出来的是一堆乱码,导致看不清具体是什么错误
Why?
cmd行打印的日志乱码,很大可能是因为cmd命令行窗口字符编码不匹配导致
解决方案
方式1:命令行中执行:chcp 65001
chcp是一个计算机指令,能够显示或设置活动代码页编号
代码页 | 描述 |
---|---|
65001 | UTF-8代码页 |
950 | 繁体中文 |
936 | 简体中文默认的GBK |
437 | MS-DOS 美国英语 |
但是这只是临时方案,chcp只对当前窗体有效,窗体关闭或重开都会失效,每次都要重新切换
方式2:修改注册表达到永久生效
window + r打开运行框,输入regedit,进入注册表,找到HKEY_CURRENT_USER\\Console%SystemRoot%_system32_cmd.exe,新建一个 DWORD(32位值),命名为CodePage,值设为65001,已有CodePage的话,修改它,改为十进制,65001
方式3:也是修改注册表的方式,但是相比2要方便一些,新建一个后辍为.reg的文件,通过记事本新建一个.txt文件,再修改后辍为.reg,内容如下:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\\Console\\%SystemRoot%_system32_cmd.exe]
"CodePage"=dword:0000fde9
"FontFamily"=dword:00000036
"FontWeight"=dword:00000190
"FaceName"="Consolas"
"ScreenBufferSize"=dword:232900d2
"WindowSize"=dword:002b00d2
保存后,再双击该文件即可
基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案
基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案
两个月前做C++课设的时候,电脑编译器编译结果出现了中文乱码,寻求了百度和大神们,都没有解决这个问题,百度上一堆解释是对编译器进行设置之类的,结果没有一个有效果,暑假学习了用Dos来开发Java程序,输入cmd命令中dir(directory)进行查询操作时,显示了一堆中文乱码,原本是想重装系统的,因为电脑里面重要东西有点多,所以自己花了一段时间捣鼓了一下电脑,终于解决了如上两个问题,现在心里很开心,附上如下两幅图:
cmd查询界面:(中文)
Codeblocks编译界面:(中文显示)
具体是怎么做到的呢,请继续往下看:
cmd出毛病一般在cmd中找原因,也可以用regedit,也就是注册表解决。
看完这篇,也可以对cmd和regedit近一步了解。以下是个人经验之谈,仅做参考,不代表官方意见。
具体解决方案:
1.右击cmd窗口,点默认值。在选项中默认代码页,选择936。
2、在cmd中输入:
chcp 936
注:chcp命令用于显示或设置活动代码页编号。
3、新建文本,复制粘贴以下代码,把文件类型改成reg :Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\\Console\\%SystemRoot%_system32_cmd.exe] "CodePage"=dword:000003a8
之后双击运行。点是。
4、运行regedit,打开注册表。
在HKEY_CURRENT_USER\\Console\\%SystemRoot%_system32_cmd.exe中找到CodePage。
双击打开CodePage,输入3a8
做完以上四步,我相信你已经成功了解决乱码问题了!一点点技术之谈,以后还会分享更多经验文章给大家的!
以上是关于window下cmd显示乱码的主要内容,如果未能解决你的问题,请参考以下文章