在Linux下Java应用程序汉字乱码,不是操作系统的问题,而是JVM的font库问题。下面是我的解决办法:
1. 在java目录下的jre/lib/fonts下建立文件夹chinese
mkdir /usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
2. 在 chinese 里弄个中文字体
拷贝或链接都可以,我的操作如下:
ln -s /usr/share/fonts/truetype/arphic/uming.ttc /usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
3. 进入/jre/lib/fonts/chinese 执行 mkfontscale
再把 jre/lib/fonts/fonts.scale 的内容加到 jre/lib/fonts/fonts.dir
我的操作如下:
/usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
mkfontscale
cd ..
chmod 777 font.dir #修改其属性要不能修改
cat chinese /fonts.scale >> fonts.dir
chmod 644 font.dir #还原它的属性
1. 在java目录下的jre/lib/fonts下建立文件夹chinese
mkdir /usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
2. 在 chinese 里弄个中文字体
拷贝或链接都可以,我的操作如下:
ln -s /usr/share/fonts/truetype/arphic/uming.ttc /usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
3. 进入/jre/lib/fonts/chinese 执行 mkfontscale
再把 jre/lib/fonts/fonts.scale 的内容加到 jre/lib/fonts/fonts.dir
我的操作如下:
/usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/fonts/chinese
mkfontscale
cd ..
chmod 777 font.dir #修改其属性要不能修改
cat chinese /fonts.scale >> fonts.dir
chmod 644 font.dir #还原它的属性
到此,Linux下Java应用程序应该可以正常显示中文了!Good Luck!
【原文】http://tqqqw.blog.163.com/blog/static/1205515820098283335799/