aix java 中文乱码,java在AIX使用GBK字符集

在windows上开发的java程序文件编码默认一般是GBK,编译时不加额外的配置,也是用GBK的编码编译,这样部署在AIX系统上,如果缺少GBK字符集,内置的中文就会显示成乱码,用中文创建文件也会创建失败或是文件名变成乱码。

在AIX上使用GBK字符集还是比较简单的,首先是安装一个兼容GBK的字符集,比如GB18030或IBM-eucCN,因为AIX已经不直接提供GBK的字符集了。安装方式如下:

先通过locale –a 命令检查AIX服务器的是否存在想要的字符集,若不存在则需要将系统盘放入光驱,然后通过smitty lang命令添加相应的字符集,具体步骤如下:

l 将AIX系统盘的第一张光盘放入光驱;

运行命令:

Smitty

--> System Environments

--> Manage Languange Environment

--> Add Addinational Languange Environments

l 在随后显示的菜单中将光标分别移到以下字段,按F4进行选择(选择 .... (zh_CN)相应语言):

CULTURAL Convention to Install

LANGUAGE translation to install

l 在光驱中放入介质,回车就可以了。

字符集安装完成后,修改java程序的启动脚本,

修改启动的环境变量export LANG=Zh_CN.GB18030或是export LANG=zh_CN.IBM-eucCN

修改java程序的启动参数-Dfile.encoding=GBK

这样启动java程序后就可以正常显示中文了,

另外IBM-eucCN虽然兼容GBK,但是支持的汉字比较少,有些生僻字无法正常显示。

在windows上开发的java程序文件编码默认一般是GBK,编译时不加额外的配置,也是用GBK的编码编译,这样部署在AIX系统上,如果缺少GBK字符集,内置的中文就会显示成乱码,用中文创建文件也会创建失败或是文件名变成乱码。 在AIX上使用GBK字符集还是比较简单的,首先是安装一个兼容GBK的字符集,比如GB18030或IBM-eucCN,因为AIX已经不直接提供GBK的字符集了。安装方式如下: 先通过locale –a 命令检查AIX服务器的是否存在想要的字符集,若不存在则需要将系统盘放入光驱,然后通过smitty lang命令添加相应的字符集,具体步骤如下: l 将AIX系统盘的第一张光盘放入光驱; 运行命令: Smitty --> System Environments --> Manage Languange Environment --> Add Addinational Languange Environments l 在随后显示的菜单中将光标分别移到以下字段,按F4进行选择(选择 .... (zh_CN)相应语言): CULTURAL Convention to Install LANGUAGE translation to install l 在光驱中放入介质,回车就可以了。 字符集安装完成后,修改java程序的启动脚本, 修改启动的环境变量export LANG=Zh_CN.GB18030或是export LANG=zh_CN.IBM-eucCN 修改java程序的启动参数-Dfile.encoding=GBK 这样启动java程序后就可以正常显示中文了, 另外IBM-eucCN虽然兼容GBK,但是支持的汉字比较少,有些生僻字无法正常显示。
经验分享 程序员 微信小程序 职场和发展