解决Windows命令行cmd中文乱码问题

Published on 2026-04-08 18:46 in 分类: 软件 with 狂盗一枝梅
分类: 软件

一、乱码现象

最近使用DataX迁移数据的时候命令行中文输出乱码了,如下所示:

image-20260408182534883

这是因为DataX程序是使用UTF-8编码开发、打包的,而Windows命令行默认使用的不是UTF-8编码,

image-20260408182758303

命令行属性中可以看到,默认使用的是GBK编码,所以产生了中文乱码。

二、临时解决方案

在命令行中直接执行命令

chcp 65001

执行完成之后就可以发现控制台编码已经变成了UTF-8

image-20260408183457816

常见代码页对照表

代码页 对应编码 适用场景
936 GBK 简体中文系统默认,兼容性最佳
65001 UTF-8 跨平台开发、国际通用字符
437 ASCII 美国英语(原始DOS默认)
950 Big5 繁体中文(台湾、香港)

三、永久解决方案

修改注册表:快捷键Win+R,键入regedit,找到注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor,并找到AutoRun选项,如果没有,则新建一个。

image-20260408184101488

修改值为chcp 65001

这样,每次打开新的控制台窗口,就会自动设置编码为UTF-8了。


转载自:https://cloud.tencent.com/developer/article/2084809


#windows #乱码 #java #python
复制 复制成功