解决Unix环境下java中文乱码

JVM

JVM启动后,JVM会设置一些系统属性以表明JVM的缺省区域。

user.language,user.region,file.encoding等。 可以使用System.getProperties()详细查看所有的系统属性。

如在英文操作系统(UNIX)下,可以使用如下属性定义强制指定JVM为中文环境 -Dclient.encoding.override=GBK -Dfile.encoding=GBK -Duser.language=zh -Duser.region=CN

常见问题

JVM下,用System.out.println不能正确打印中文,显示为???

System.out.printlnPrintStream,它采用jvm缺省字符集进行转码工作,如果jvm的缺省字符集为iso8859-1,则中文显示会有问题。此问题常见于Unix下,jvm的区域没有明确指定的情况。

 

B/S程序可以在服务器设置启动的初始化参数,下面以tomcat为例:

在bin/catalina.sh添加以下内容:

JAVA_OPTS=-Dfile.encoding=GBK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值