cmd中文乱码主因是代码页与字符编码不匹配,可通过五种互不依赖方法解决:一、临时切换(chcp 65001/936);二、属性设置默认代码页;三、注册表修改codepage值;四、注册表autorun自动执行chcp;五、调整系统区域设置中非unicode语言。
如果您在 windows 系统中运行 cmd 命令提示符时,中文显示为问号、方块或乱码字符,则极可能是当前活动代码页(code page)与程序输出的字符编码不一致所致。以下是多种可独立操作、互不依赖的解决方法:
一、临时切换当前会话的活动代码页
该方法仅对当前 CMD 窗口生效,关闭后自动恢复原设置,适合快速验证或单次调试,无需重启或修改系统配置。
1、点击开始菜单,输入“cmd”并回车打开命令提示符窗口。
2、在窗口中输入命令:chcp 65001,按回车执行,确认返回“活动代码页: 65001”。
3、若需切换回简体中文 GBK 编码,输入:chcp 936,按回车执行。
4、执行后立即运行含中文输出的命令(如 echo 测试中文 或运行批处理脚本),观察是否恢复正常显示。
二、通过 CMD 属性设置默认活动代码页
此方式修改 CMD 窗口的默认启动配置,对所有新启动的 CMD 实例生效,避免每次手动输入 chcp 指令。
1、打开任意 CMD 窗口,右键点击标题栏,选择“属性”。
2、切换至“选项”选项卡,向下滚动找到“当前代码页”下拉菜单。
3、从中选择UTF-8 (65001)或简体中文 (936),依据实际使用场景决定。
4、勾选下方的“应用为默认值”复选框,点击“确定”保存。
5、关闭当前窗口,重新打开 CMD,执行 chcp 命令验证是否已生效。
三、通过注册表修改用户级默认活动代码页
当“属性”设置无法持久化(如组策略限制或配置被重置)时,可直接修改注册表项,确保每次启动 CMD 均加载指定代码页。
1、按 Win + R 打开运行框,输入 regedit 并回车,启动注册表编辑器。
2、导航至路径:HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe。
scratch编程软件电脑版是一款非常受欢迎的编程学习软件,它适用于8-16岁的孩子编程学习,通过图形编程来培养孩子的编程思想,让孩子能够快速的掌握编程知识,感兴趣的朋友不要错过了,欢迎大家下载体验。基本简介Scratch编程软件利用图形化界面,把编程需要的基本技巧囊括其中,包括建模,控制,动画,事件,逻辑,运算,等等。孩子非常容易掌握,而内涵一点都不简单。通过这个工具平台,孩子可以快速掌握编程技巧,充分发挥自己的想象力。功能介绍1.体系化课程,学习目标明确;2.教学方法成熟,保证学习效率;3.老师在线答
3、在右侧空白处右键,选择“新建 → DWORD (32位)值”,命名为 CodePage。
4、双击该新建项,将“数值数据”设为十进制 65001(UTF-8)或 936(GBK),基数选“十进制”。
5、关闭注册表编辑器,重启 CMD 窗口,执行 chcp 查看是否已应用新代码页。
四、通过注册表 Autorun 值实现启动自动执行 chcp
该方法不更改默认代码页本身,而是在每次 CMD 启动时自动运行 chcp 命令,从而绕过控制台初始化阶段的编码滞后问题。
1、按 Win + R 输入 regedit 打开注册表编辑器。
2、导航至路径:HKEY_CURRENT_USER\Software\Microsoft\Command Processor。
3、右键空白处 → 新建 → 字符串值,命名为 Autorun。
4、双击该值,将其数值数据设为:chcp 65001 >nul(或 chcp 936 >nul)。
5、关闭注册表编辑器,新开 CMD 窗口,直接执行中文命令(如 echo 中文测试)验证效果。
五、配合系统区域设置统一非 Unicode 程序语言环境
CMD 默认以系统“非 Unicode 程序的语言”为准加载 OEM 代码页,若该设置与实际中文环境不符,会导致底层编码链断裂。
1、打开“控制面板” → “时钟和区域” → “区域” → 切换到“管理”选项卡。
2、点击“更改系统区域设置”按钮。
3、确认“非 Unicode 程序的语言”已设为中文(简体,中国);如非此选项,请更改为该语言并重启。
4、重启计算机后,再次打开 CMD,执行 chcp 查看默认代码页是否同步为 936。










