一时手贱把系统区域改成台湾(其实是为了开种子市场),然后把区域改回来,发现原来的所有bat文件运行时都成乱码了。
另存bat为ANSI的方法不管用,这个不是UTF8或ANSI编码的原因,是活动代码页变成了big5码。可以运行cmd,执行命令 chcp 936 将编码改回GBK,改一次所有的bat都正常了。这个命令还可以用在bat头部声明编码。
DISS为什么改区域这货的编码会跟着改,改回来却不会?
附 chcp [xxx]代码表:
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 中欧

将系统区域设置改回原值后,bat文件仍显示乱码,因为活动代码页变为big5。通过在cmd中执行`chcp 936`命令,可以将编码改为GBK,从而修复bat文件的乱码问题。此命令也可添加到bat文件头部声明编码。
最低0.47元/天 解锁文章
7658

被折叠的 条评论
为什么被折叠?



