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"


  • 相关阅读:
    Ubuntu 出现 apt-get问题的解决方法
    Conversion to Dalvik format failed: Unable to execute dex: null
    java中判断是否为中文
    解决:Unable to connect to repository https://dl-ssl.google.com/android/eclipse/site.xml
    Android 获取本机WIFI及3G网络IP
    xp重装系统后恢复Linux启动
    Android中空格及换行
    ubuntu12.10设置thunderbird开机自启动
    web安全及防护
    回归基础: JavaScript 变量提升
  • 原文地址:https://www.cnblogs.com/yefengmeander/p/2887531.html
Copyright © 2011-2022 走看看