zoukankan      html  css  js  c++  java
  • Resolve Chiness Messy Code in Linux

    其实乱码这个问题是由系统集成的字符集引起的,由于不能正确的使用相对应字符的字符集,因此OS不能识别出文字导致了乱码。


    首先,我们先要知道控制Linux OS 的语言环境变量是 $LANG和$LC_ALL,要解决乱码的情况我们只需要把上述的两个变量正确设置即可.

    乱码分两种情况:
    1.终端(纯shell界面)的乱码
    vi /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"
    保存退出,reboot系统即可..

    2.X-window(图形界面)的乱码
    vi /etc/sysconfig/i18n
    LANG="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF-8:en_US:en:zh:zh_TW:zh_CN.BIG5"
    LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF-8:en_US:en:zh:zh_TW:zh_CN.BIG5"
    保存reboot即可...

    由于中文的字符集编码很多,我自己也不是十分清楚彼此的兼容性如何,所以就尽可能的找了很多种不同的编码都写了上去,大家也可以自己筛选下,总的解决思路就是修改控制环境参数的变量,增加OS所支持的字符集(前提要内核上存在该字符,否则需要编译内核)

    方法一:    修改/root/.bash_profile文件,增加export LANG=zh_CN.GB18030


    对于其他用户,也必须相应修改该文件


        使用该方法时putty能显示中文,但桌面系统是英文,而且所有的网页中文显示还是乱码


    方法二:

    修改/etc/sysconfig/i18n文件


    #LANG="en_US.UTF-8"
    #SUPPORTED="en_US.UTF-8:en_US:en"
    #SYSFONT="latarcyrheb-sun16"


    改为


    LANG="zh_CN.GB18030"
    LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
    SUPPORTED="zh_CN.GB18030:zh_CN:zh"
    SYSFONT="lat0-sun16"
    SYSFONTACM="8859-15"


  • 相关阅读:
    软件架构实现
    UVa644
    如何理解Hibernate中的HibernateSessionFactory类
    在pcDuino上使用蓝牙耳机玩转音乐
    Java Web----Java Web的数据库操作(三)
    Pylons Controller里面Session.commit()总是出现rollback
    ORACLE的SQL JOIN方式小结
    关于数据库学习进阶的一点体悟
    IO is frozen on database xxx, No user action is required
    ORACLE等待事件:enq: TX
  • 原文地址:https://www.cnblogs.com/yefengmeander/p/2887531.html
Copyright © 2011-2022 走看看