CMD 修改编码格式避免乱码

本文详细介绍了如何在CMD控制台中使用CHCP命令查看和修改编码,包括临时和永久设置UTF-8编码的方法,以及如何通过修改注册表实现永久编码变更。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CMD控制台 默认使用 GBK 编码。要修改 控制台 的编码就要用到 CHCP 命令了。

有两种方式查看 chcp 的用法说明
help chcp
chcp /?


CHCP [nnn]

nnn 指定代码页的编号(注意:三个n并非说明代码页只能有3位)

CHCP 命令用来显示或设置 控制台 的 活动代码页编号。不带参数键入 CHCP 以显示活动代码页编号。

活动代码页编号的定义
代码页是字符集编码的别名,也有人称”内码表”。早期,代码页是IBM称呼电脑BIOS本身支持的字符集编码的名称。当时通用的操作系统都是命令行界面系统,这些操作系统直接使用BIOS供应的VGA功能来显示字符,操作系统的编码支持也就依靠BIOS的编码。现在这BIOS代码页被称为OEM代码页。图形操作系统解决了此问题,图形操作系统使用自己字符呈现引擎可以支持很多不同的字符集编码。

早期IBM和微软内部使用特别数字来标记这些编码,其实大多的这些编码已经有自己的名称了。虽然图形操作系统可以支持很多编码,很多微软程序还使用这些数字来点名某编码。

下表列出了所有支持的代码页及其国家(地区)或者语言:

代码页    国家(地区)或语言
437    美国
708    阿拉伯文(ASMO 708)
720    阿拉伯文(DOS)
850    多语言(拉丁文 I)
852    中欧(DOS) - 斯拉夫语(拉丁文 II)
855    西里尔文(俄语)
857    土耳其语
860    葡萄牙语
861    冰岛语
862    希伯来文(DOS)
863    加拿大 - 法语
865    日耳曼语
866    俄语 - 西里尔文(DOS)
869    现代希腊语
874    泰文(Windows)
932    日文(Shift-JIS)
936    中国 - 简体中文(GB2312)
949    韩文
950    繁体中文(Big5)
1200    Unicode
1201    Unicode (Big-Endian)
1250    中欧(Windows)
1251    西里尔文(Windows)
1252    西欧(Windows)
1253    希腊文(Windows)
1254    土耳其文(Windows)
1255    希伯来文(Windows)
1256    阿拉伯文(Windows)
1257    波罗的海文(Windows)
1258    越南文(Windows)
20866    西里尔文(KOI8-R)
21866    西里尔文(KOI8-U)
28592    中欧(ISO)
28593    拉丁文 3 (ISO)
28594    波罗的海文(ISO)
28595    西里尔文(ISO)
28596    阿拉伯文(ISO)
28597    希腊文(ISO)
28598    希伯来文(ISO-Visual)
38598    希伯来文(ISO-Logical)
50000    用户定义的
50001    自动选择
50220    日文(JIS)
50221    日文(JIS-允许一个字节的片假名)
50222    日文(JIS-允许一个字节的片假名 - SO/SI)
50225    韩文(ISO)
50932    日文(自动选择)
50949    韩文(自动选择)
51932    日文(EUC)
51949    韩文(EUC)
52936    简体中文(HZ)
65000    Unicode (UTF-7)
65001    Unicode (UTF-8)
将 控制台 编码 临时 设为 utf-8 编码
控制台 的默认编码为:936【中国 - 简体中文(GB2312)】

键入 chcp 65001 控制台就会清屏,然后切换到新的代码页

但是如果仅这样设置的话,下次打开控制台还会恢复成原来的编码,即 936【中国 - 简体中文(GB2312)】。

将 控制台 编码 永久 设为 utf-8 编码
只有一种办法,那就是修改注册表

运行 regedit

进入 HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe 将 CodePage 改为 fde9 (原值为 3a8)均是编码的十六进制表现形式。

powershell 的默认编码也可以通过这种方式改变。

原文:https://blog.youkuaiyun.com/chy555chy/article/details/78355985 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值