linux下因为系统编码问题造成乱码的快速解决方法

最近一段时间遇到一些润乾的应用在linux系统下面乱码的问题,最后检查后都发现是客户的linux系统默认编码设置的不正确造成的,这种原因造成乱码的现象一般都是程序里面写死了的中文字符能正常展现,但是从数据库中取出来的或者从程序中读出来的中文字符就会出现乱码。

下面就介绍一下由于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下因为系统编码问题造成乱码的快速解决方法全部内容了,希望大家多多支持我们~

(0)

相关推荐

  • 关于Linux操作系统下终端乱码的完美解决方法

    初入linux的程序员们,经常会受到乱码的问候.可谓"始乱终弃".因为乱码,并且最终放弃了linux的不在少数.好吧,言归正传,先看看各类乱码是怎么形成的. 中文字符乱码 这种情况一般是安装了中文控制端,但没有启用中文应用造成的.只需要启动相应软件即可,如zhcon.或者是启用了相应软件,但字符集不对,需设置相应字符集,例如export LANG=zh_CN.UTF-8 ORACLE安装界面乱码 虽说ORACLE支持多国语言,会根据环境变量自动选择字符集,但中文安装好像还有问题,不过1

  • Linux php 中文乱码的快速解决方法

    在ubuntu下php网页输出乱码,在不涉及数据库编码的情况下: 修改"/etc/php5/apache2/php.ini"将 default_charset = "iso-8859-1" 修改为 default_charset = "utf-8" 然后重启apache: sudo /etc/init.d/apache2 restart 以上这篇Linux php 中文乱码的快速解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望

  • 远程linux xshell下输出中文乱码解决方法

    使用xshell登录中文版CentOS或者redhat时,在xshell下如果输出的是中文的话可能会显示乱码,通过如下办法可以有效的解决乱码问题 linux中文乱码解决方法如下: 复制代码 代码如下: [root@localhost ~]# cd /etc/sysconfig/ [root@localhost sysconfig]# cp i18n i18n.bak #备份i18n文件 [root@localhost sysconfig]# echo "" >i18n [root

  • Linux下乱码问题的解决方案小结

    linux系统中文件名内容为urf8编码, windows系统中文件名默认为gbk编码, 多数文档使用gbk编码,系统采用utf8编码 无中文输入法导致的乱码 1.ibus输入法 Ubuntu 系统安装后已经自带了ibus输入法,在英语环境下默认不启动.配置ibus自动启动可以在ubuntu系统菜单上选择System --- Preferences --- Startup Applications,在该窗口中增加一个程序: Name: ibus-daemon Command: ibus-daem

  • Linux安装Oracle出现乱码怎么解决

    Linux系统下Oracle经常会出现乱码,不管是安装还是使用过程中都会出现中文乱码.这是因为Linux系统中缺少了某些字体,只要安装了这些字体,就能解决这个问题了. 解决办法一: 方法如下: 把中文字体放到Oracle安装包的 jdk/jre/lib/font/fallback下就可以了. 对于使用Oracle图形化工具时出现的乱码问题: 把中文字体复制到 ~/.font下,然后执行: 复制代码 代码如下: $ sudo mkfontscale $ sudo mkfontdir 以上就是Lin

  • Linux下进行MYSQL编程时插入中文乱码的解决方案

    插入中文是乱码,尝试了许多方法,比如我先把vim里设置为:set fileencoding=utf-8不起作用,后来想想也对,和vim没什么关系 然后就尝试c#代码,用Encoding.UTF8.GetString()方法,后来也不对. 我就郁闷了,忽然想起来莫不是mysql的设置问题??? 于是,sudo nano /etc/mysql/my.cnf 插入下面红色代码,default-character-set = utf8,成功,不乱码了~~~根本不用什么Encoding..... # Th

  • linux下因为系统编码问题造成乱码的快速解决方法

    最近一段时间遇到一些润乾的应用在linux系统下面乱码的问题,最后检查后都发现是客户的linux系统默认编码设置的不正确造成的,这种原因造成乱码的现象一般都是程序里面写死了的中文字符能正常展现,但是从数据库中取出来的或者从程序中读出来的中文字符就会出现乱码. 下面就介绍一下由于linux系统编码设置不正确造成润乾报表应用乱码问题的解决办法. 第一步:检查linux的系统编码. 检查linux的系统编码,确定系统是否支持中文.在linux系统的终端中输入命令:locale,就会看到打印出的系统编码

  • Linux下Tomcat启动正常,但浏览器无法访问的解决方法

    1.服务器可ping通 2.服务器抓本地的http请求包,可以抓到 3.本地抓服务器返回的http响应包,抓不到 经过查找,是由于开启了Linux防火墙 查看防火墙配置(需要root权限) [root@localhost ~]# service iptables status Redirecting to /bin/systemctl status  iptables.service iptables.service - IPv4 firewall with iptables Loaded: l

  • IE下Ajax提交乱码的快速解决方法

    哈哈,试了这么多还是encodeURIComponent管用啊!!!! 在汉字的位置加个保护措施:encodeURIComponent(parentid) function loadCity(parentid) { var city = '${hotel.city}'; $.ajax({ url: './listCity.jspx?prov='+ encodeURIComponent(parentid), type: 'GET', dataType: 'JSON', timeout: 5000,

  • 同一个文件在windows和linux下计算md5哈希不一致的原因及解决方法

    最近项目需要,需要对客户传过来的文件进行MD5校验,在实现的过程中前前后后遇到了若干问题,在这里总结一下. md5的计算采用openssl实现,具体代码网上很多,这里不再赘述.需要注意的问题 1 读取文件内容时,文件打开方式要用二进制方式(rb),因为用户文件有可能是linux格式,如果用文本方式打开,可能会改变原始的内容,造成计算不准. 2 结果检验.windows可以随便下载一个md5计算工具,网上很多,我用的是HashMyFiles.linux下面,md5sum 文件名 即可. 还有一个隐

  • Linux下安装软件包报依赖等相关问题的解决方法

    目录 背景 1)开启 yum 的 keepchche 功能:方法1 2) yum-utils 软件:方法2 3) lrzsz 下载上传 背景 在内网服务器下无法利用yum进行安装,需要自行安装可能会出现相关依赖报错(依赖软件包版本不兼容)的情况出现,解决思路:可以找一台相同操作系统版本且支持yum下,通过已安装的软件包拷贝到另一台机器上进行安装. 1)开启 yum 的 keepchche 功能:方法1 vi /etc/yum.conf keepcache =1 # 修改为1 例:安装 iptab

  • Mysql5.5安装配置方法及中文乱码的快速解决方法

    1.启动服务 windows下DOS命令窗口输入指令: 查看服务是否启动:net help services 启动mysql服务:net start mysql 停止mysql服务:net stop mysql linux下在bash下,输入指令: 查看服务状态:service mysqld status 启动mysql服务:service mysqld start 停止mysql服务:service mysqld stop 2.登陆 mysql -u[这里输入用户名] -p[这里输密码] 3.

  • php pdo oracle中文乱码的快速解决方法

    在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PATH=/usr/include/oracle/12.1/client64 LD_LIBRARY_PATH=$ORACLE_HOME/lib #remember this is the client NLS_LANG not the server one NLS_LANG=FRENCH_FRANCE.

  • PHP读MYSQL中文乱码的快速解决方法

    打算切换某个网站的主机,没想到遇到Php和Mysql中文乱码的问题. 以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的Mysql是5.0版本的,导入数据后,用Php读出来全是问号,乱码一片,记得我以前也曾经有过一次切换出现乱码的经验,原因肯定是Mysql版本之间的差异问题. 只好查资料,发现了一个解决方法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用

  • bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法

    bootstrap-table下表格中增加操作的btn,如果是下拉菜单,那么在每一页最后一行点击下拉菜单,会出现滚动条,解决方法: 修改这个类,但是这个类改了会有点影响toolbar的显示,不过问题不大,加个margin就可以了 .fixed-table-body{ overflow:visible !important; } 以上所述是小编给大家介绍的bootstrap table 表格中增加下拉菜单末行出现滚动条解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的

随机推荐