linux下由于系统编码问题造成乱码的解决办法
2011-11-24 09:32
501 查看
下面介绍一下由于linux系统编码设置不正确造成润乾报表应用乱码问题的解决办法。
第一步:检查linux的系统编码。
检查linux的系统编码,确定系统是否支持中文。在linux系统的终端中输入命令:locale,就会看到打印出的系统编码信息。如果打印出来的信息如下,则说明系统的编码不支持中文:
LANG=en_US.UTF-8
LC_CTYPE=”en_US.UTF-8″
LC_NUMERIC=”en_US.UTF-8″
LC_TIME=”en_US.UTF-8″
LC_COLLATE=”en_US.UTF-8″
LC_MONETARY=”en_US.UTF-8″
LC_MESSAGES=”en_US.UTF-8″
LC_PAPER=”en_US.UTF-8″
LC_NAME=”en_US.UTF-8″
LC_ADDRESS=”en_US.UTF-8″
LC_TELEPHONE=”en_US.UTF-8″
LC_MEASUREMENT=”en_US.UTF-8″
LC_IDENTIFICATION=”en_US.UTF-8″
支持中文的系统编码打印出来的信息应该如下图所示:
第二步:修改系统默认编码设置。
如果发现系统编码不支持中文的话,那么就要修改系统编码,使其支持中文,这样润乾报表的中文在应用中才不会乱码。修改系统编码的代码如下:
/etc/sysconfig/i18n
Controls the system font settings. The language variables are used in /etc/profile.d/lang.sh. An example i18n file:
LANG=”en_US.GB18030″
LANGUAGE=” en_US.GB18030: en_US.GB2312: en_US ”
SUPPORTED=” en_US.GB18030: en_US:en:en_US.UTF-8:en_US:en”
SYSFONT=”lat0-sun16″
系统的默认字符集是英文,如果要把字符集设置成支持中文的,可以通过设置这个文件来改变系统的默认字符集。
另外,也可在用户的环境变量或者用户的环境变量文件加入路径变量的声明:
在系统的预处理文件中声明,这样对整个系统起作用:
#vi /etc/profile
在文件尾加入:
LC_ALL=”zh_CN.GBK”
export LANG=”zh_CN.GBK”
在用户的预处理文件中声明,对单独的用户起作用:
#vi /root/.bash_profile
在文件尾加入:
export LC_ALL=”zh_CN.GBK”
export LANG=”zh_CN.GBK”
以上配置重新启动服务器使更改生效。
第三步:查看修改过的系统默认编码。
通过以上步骤的操作然后重启电脑,再在终端中输入命令:locale,然后就会看到系统的字符集信息变成了如下内容:
经过以上修改,由于系统默认编码不支持中文造成的乱码就可以顺利解决了。
第一步:检查linux的系统编码。
检查linux的系统编码,确定系统是否支持中文。在linux系统的终端中输入命令:locale,就会看到打印出的系统编码信息。如果打印出来的信息如下,则说明系统的编码不支持中文:
LANG=en_US.UTF-8
LC_CTYPE=”en_US.UTF-8″
LC_NUMERIC=”en_US.UTF-8″
LC_TIME=”en_US.UTF-8″
LC_COLLATE=”en_US.UTF-8″
LC_MONETARY=”en_US.UTF-8″
LC_MESSAGES=”en_US.UTF-8″
LC_PAPER=”en_US.UTF-8″
LC_NAME=”en_US.UTF-8″
LC_ADDRESS=”en_US.UTF-8″
LC_TELEPHONE=”en_US.UTF-8″
LC_MEASUREMENT=”en_US.UTF-8″
LC_IDENTIFICATION=”en_US.UTF-8″
支持中文的系统编码打印出来的信息应该如下图所示:
第二步:修改系统默认编码设置。
如果发现系统编码不支持中文的话,那么就要修改系统编码,使其支持中文,这样润乾报表的中文在应用中才不会乱码。修改系统编码的代码如下:
/etc/sysconfig/i18n
Controls the system font settings. The language variables are used in /etc/profile.d/lang.sh. An example i18n file:
LANG=”en_US.GB18030″
LANGUAGE=” en_US.GB18030: en_US.GB2312: en_US ”
SUPPORTED=” en_US.GB18030: en_US:en:en_US.UTF-8:en_US:en”
SYSFONT=”lat0-sun16″
系统的默认字符集是英文,如果要把字符集设置成支持中文的,可以通过设置这个文件来改变系统的默认字符集。
另外,也可在用户的环境变量或者用户的环境变量文件加入路径变量的声明:
在系统的预处理文件中声明,这样对整个系统起作用:
#vi /etc/profile
在文件尾加入:
LC_ALL=”zh_CN.GBK”
export LANG=”zh_CN.GBK”
在用户的预处理文件中声明,对单独的用户起作用:
#vi /root/.bash_profile
在文件尾加入:
export LC_ALL=”zh_CN.GBK”
export LANG=”zh_CN.GBK”
以上配置重新启动服务器使更改生效。
第三步:查看修改过的系统默认编码。
通过以上步骤的操作然后重启电脑,再在终端中输入命令:locale,然后就会看到系统的字符集信息变成了如下内容:
经过以上修改,由于系统默认编码不支持中文造成的乱码就可以顺利解决了。
相关文章推荐
- linux下由于系统编码问题造成乱码的解决办法
- linux下由于系统编码问题造成乱码的解决办法
- Linux下因为系统编码问题造成乱码的解决办法
- linux下因为系统编码问题造成乱码的解决办法
- linux下因为系统编码问题造成乱码的快速解决方法
- 解决Javascript由于编码不同造成乱码的问题
- 解决Javascript由于编码不同造成乱码的问题
- 由于文件编码问题造成json_encode 中文变成null的解决办法
- ubuntu系统下gedit 打开GBK字符集编码文件出现乱码问题解决办法
- 解决Javascript由于编码不同造成乱码的问题
- 64位Linux系统下Not able to load mod_wl_20.so问题解决办法总结
- Linux 下文件名乱码(无效的编码)的解决办法
- Linux系统安装NoSQL(MongoDB和Redis)步骤及问题解决办法
- mysql--出现中文乱码或不能输入中文问题的Windows或Linux系统解决方法
- vc本地编码程序在日文系统出现乱码无法使用的解决办法
- Excel出现“由于本机的限制,该操作已被取消,请与系统管理员联系”问题的解决办法。
- Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- linux下解决文件乱码问题及查看文件编码方法
- Linux解决乱码问题以及查看文件编码方式
- linux 乱码 及解决方法 locale 可以利用iconv -l 来查看linux系统都支持哪种编码格式