在Linux下写swing时有时会出现乱码问题,例如在JButton上添加中文确定时,会出现两个方框,而非确定二字。本人也没深如研究此问题只是在程序运行最前面加入以下这段代码时,程序乱码问题便能解决。
Font font = new Font("宋体", Font.PLAIN, 12);
Enumeration<Object> keys = UIManager.getDefaults().keys();
while (keys.hasMoreElements()) {
Object key = keys.nextElement();
if (key.toString().toLowerCase().contains(".font")) {
UIManager.put(key, font);
}
}
转自:http://blog.163.com/kimi_xia/blog/static/9035682420088163144588/
--------------------------------------------------------------------------------------------------
cd <JAVA_HOME>/lib/fonts或者cd <JAVA_HOME>/jre/lib/fonts
mkdir fallback
其中<JAVA_HOME>是你安装jdk/jre的路径,我的是/usr/lib/jdk1.5。复制或者链接一个中文字体至其下:
ln -s /usr/share/fonts/truetype/simsun.ttf /usr/lib/jdk1.5/jre/lib/fonts/fallback/simsun.ttf