问题描述
bat 批处理脚本如下
@echo off echo hello,world. echo 你好,中国 pause
在 cmd 执行该脚本时,出现了中文乱码
问题分析
- 乱码都跟字符编码有关系。
- 计算机只能处理数字,如果遇到文本,必须先将其转换为数字后才能处理,由此出现了字符编码(字符集)。如果编码时采用某种字符编码,那么解码时,必须得相对应使用同一种字符编码,如采用不同的字符编码,会出现乱码。
问题解决
1. 转换脚本文件的编码方式
默认情况下,在 bat 脚本文件中,如果中文不是ansi编码,就会出现乱码。因此,可以采用windows操作系统平台自带的记事本打开脚本文件,点击菜单【文件】-【另存为】操作,选择ansi编码进行保存。
转换编码后,再次运行,中文乱码问题得到解决。
2. 更改代码页
在原先 bat 脚本文件中声明更改代码页
chcp 65001
再次运行,中文乱码问题得到解决。
拓展 chcp 命令
changes the active console code page.
常用代码页映射
代码页 | 映射的字符集 |
---|---|
936 | gb2312 |
20127 | us-ascii |
65001 | utf-8 |
到此这篇关于bat批处理脚本中文乱码的解决的文章就介绍到这了,更多相关批处理中文乱码内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论