为cmd脚本的中文字符串输出乱码提供几种解决方法。推荐使用第一种方法,一次永久性解决方案。

注册表修改

win+R输入regedit进入注册表,找到KEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe,将CodePage的值改为十进制“65001”。

脚本内部设置

在bat脚本开头添加UTF-8编码声明

1
2
rem 声明采用UTF-8编码
chcp 65001

编码转换

01 右击bat文件,编辑,使用记事本打开文件,以ANSi编码方式另存替换。

02 使用notepad++打开,点击编码——转为ANSI编码。

powershell脚本中文输出显示乱码解决方案

powershell默认的编码方式为utf-16。

目前的GSir试过的可行方法为上述的编码转换法。

部分字符编码对应代码: 65001——UTF-8 936——简体中文 950——繁体中文 437——美国/加拿大英语 932——日文 949——韩文 866——俄文