日期:2014-05-16  浏览次数:20663 次

解决Linux下Java中文乱码问题

问题描述:

????? 一时心血来潮随便写了个AWT程序部署在Linux下,想测试一下JAVA的跨平台能力,结果发现功能一切正常,但中文都显示成了一个个的方块。

问题解决:

????? 一开始以为是系统语言设置问题,输入命令:

????? #locale -a??????? //查看系统支持语言

????? #LANG="zh_CN.utf8"???? //设置系统语言

????? 设置完成后再次运行程序,发现问题依旧如故,这次是真的一点头绪也没有了,再次去网上搜索发现可能是JAVA JVM中字体支持过少的缘故,于是找到<JAVA_HOME>/jre/lib/fonts目录,执行:

????? #mkdir fallback

????? 再找到Linux系统下的字体文件存放位置/usr/share/fonts/truetype/,我这里是OpenSUSE 11.2,其他的系统可能位置不太一样,因为不清楚具体需要哪种字体文件,所以将目录下的所有字体文件全部拷到刚才建立的fallback目录中,然后再次在终端中运行程序,终于看到的了熟悉的中文界面。

注:此方法仅支持JDK1.5及以后版本,JDK1.4需要修改JAVA JVM的字体配置文件,在此处就不多赘述了。