Linux下Java图形界面中文显示乱码问题(变成方框口 口 口) 已解决

在Linux环境下,Java图形界面显示中文出现乱码问题,通常是由于JRE缺少支持的中文字库导致。解决方案包括在$JAVA_HOME/jre/lib/fonts创建fallback目录,并复制或链接中文字体,如文泉驿正黑。步骤包括新建fallback目录,拷贝字体文件,刷新字体缓存,最后重启相关服务。确保Linux服务器上存在所需字体,并执行fc-cache -fv命令更新字体缓存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 可能原因

可能是JRE的中文字库不支持引起,所以添加一个可以支持的中文字库

 

二 解决方案 

2.1 直接复制粘贴

1)在$JAVA_HOME/jre/lib/fonts下新建一个fallback目录,让Java程序渲染生僻字时在fallback里面找。

2)把windows/fonts/simsun.ttc拷贝到fallback去

3)重启相关服务·

2.2 进入fallback文件夹,链接中文字体(我选的是文泉驿正黑)

代码:cd fallback

sudo ln -s /usr/share/fonts/truetype/wqy/wqy-zenhei.ttf  . (或 sudo cp  /usr/share/fonts/truetype/wqy/wqy-zenhei.ttf  . )

sudo mkfontdir

sudo mkfontscale

或者

cd /usr/lib/jvm/java-6-sun/jre/lib/fonts

sudo mkdir fallback

然后在windows的fonts目录下copy个中文字体文件进去。例如simsun.ttc

 

 

成功解决方案如下:

【1】.检查您的linux服务器上是否存在您设定的中文字体(若有则可正常显示):切换到"/usr/share/fonts“目录,若无fonts目录则可手动创建fonts文件夹。

【2】.准备好中文字体:在您的windows电脑上能正常显示,说明您电脑有该字体,将字体复制打包到一个文件夹,准备上传到linux服务器的/usr/share/fonts目录下。

我这边是simsun.ttf

【3】.上传字体:将准备好的字体一起上传到linux服务器的”/usr/share/fonts“的目录下;

【4】.切换到您上传字体目录/usr/share/fonts,在此目录下执行linux命令“fc-cache -fv”(如果提示不成功就下一个 fontsconfig),扫描字体目录并生成字体信息的缓存,然后应用程序就可以"立即"使用这些新安装的字体。

【5】.重启您的应用即可。

参考链接:https://blog.youkuaiyun.com/han_ying_ying/article/details/111680128

 

 

 

 

 

 

参考文章

https://blog.youkuaiyun.com/weixin_39555954/article/details/80632400

https://blog.youkuaiyun.com/weixin_41989775/article/details/93730875

 

https://blog.youkuaiyun.com/q290994/article/details/89059548

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值