当前位置: 技术问答>linux和unix
java程序在linux系统下中文输出乱码,输出一个汉字对应一个问号
来源: 互联网 发布时间:2017-03-14
本文导语: linux输出问号问题:centos 5.6 64位系统,jdk1.6.0_10 昨天有一个问题搞了一整天没搞出来. 程序部署到linux系统下 rmsg = getXSdata(fixlen); String strLink ="rn测试时间:"+getTime()+"rn"+ rmsg rmsg的数据是查询数据库得到的。 数...
linux输出问号问题:centos 5.6 64位系统,jdk1.6.0_10
昨天有一个问题搞了一整天没搞出来.
程序部署到linux系统下
rmsg = getXSdata(fixlen);
String strLink ="rn测试时间:"+getTime()+"rn"+ rmsg
rmsg的数据是查询数据库得到的。
数据库在linux下正常显示中文,只有程序中的汉字如:测试时间输出时显示问号,一个汉字对应一个问号。
起初一切都是正常的,第二天服务器重启就出现这个问题了。
我在/etc/profile文件中加入
export LC_ALL="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF-8:en_US:en:zh:zh_TW:zh_CN.BIG5"
export LANG="zh_CN.UTF-8"
export LANG="zh_CN.GB18030"
在/etc/sysconfig/i18n 中加入
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
我该设置该改的地方都改了,哪位大侠帮我看看,如何解决这个问题。
还有用程序远程连接上去返回的所有数据都是正常的,但是终端设备和telnet返回的数据是一个汉字对应一个问号
昨天有一个问题搞了一整天没搞出来.
程序部署到linux系统下
rmsg = getXSdata(fixlen);
String strLink ="rn测试时间:"+getTime()+"rn"+ rmsg
rmsg的数据是查询数据库得到的。
数据库在linux下正常显示中文,只有程序中的汉字如:测试时间输出时显示问号,一个汉字对应一个问号。
起初一切都是正常的,第二天服务器重启就出现这个问题了。
我在/etc/profile文件中加入
export LC_ALL="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF-8:en_US:en:zh:zh_TW:zh_CN.BIG5"
export LANG="zh_CN.UTF-8"
export LANG="zh_CN.GB18030"
在/etc/sysconfig/i18n 中加入
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
我该设置该改的地方都改了,哪位大侠帮我看看,如何解决这个问题。
还有用程序远程连接上去返回的所有数据都是正常的,但是终端设备和telnet返回的数据是一个汉字对应一个问号
|
不要LANG="zh_CN.GB18030"
只要LANG="zh_CN.UTF-8"
Linux默认的都是UTF-8编码,指定那个会更麻烦。
只要LANG="zh_CN.UTF-8"
Linux默认的都是UTF-8编码,指定那个会更麻烦。
|
中文显示也可能是字体不支持的原因。
不过既然你数据库里中文显示是正常的,
可能就不是字体的原因。
仅提供一个排查的方向,实在搞不定再考虑这个吧。
不过既然你数据库里中文显示是正常的,
可能就不是字体的原因。
仅提供一个排查的方向,实在搞不定再考虑这个吧。