java有时在cmd框里面运行时,出现中文乱码,这是由于环境编码与代码运行编码不一致所在。
为解决这个问题,可以在运行时指定编码,来保证显示正常的中文。
一、检测环境编码命令
D:\classes>chcp
活动代码页: 936
这是简体中文GBK环境。
D:\classes>chcp
Active code page: 65001
这是UTF-8状态环境。
二、编码设置方法
为了在运行时,正常显示中文,设置方法有两种:
- 指定环境编码适应运行编码;
- 指定运行编码以使用环境编码。
2.1、方法1:指定环境编码适应运行编码
先检测环境编码,然后设定环境编码:
--这是设置GBK简体中文编码
chcp 936
-- 这是设置UTF-8中文编码
chcp 65001
--设置正确时,运行代码时,有中文输出时才会显示正常的中文,否则乱码。
java -Djava.ext.dirs=lib -jar mytest.jar
2.1、方法2:指定运行编码以使用环境编码
先检测环境编码,然后设定运行编码:
--设定GBK中文格式:
java -Dfile.encoding=GBK -Djava.ext.dirs=lib -jar mytest.jar
--设定UTF-8中文格式:
java -Dfile.encoding=UTF-8 -Djava.ext.dirs=lib -jar mytest.jar
End.