V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
vking
V2EX  ›  Linux

vps,centos 5.6 32bit,请问同时支持中文,日文和韩文,最简单的方法是什么?

  •  
  •   vking · 2012-07-11 00:29:07 +08:00 · 6390 次点击
    这是一个创建于 4278 天前的主题,其中的信息可能已经有所发展或是发生改变。
    26 条回复    1970-01-01 08:00:00 +08:00
    binux
        1
    binux  
       2012-07-11 00:41:14 +08:00
    什么叫“同时支持中文,日文和韩文”
    vking
        2
    vking  
    OP
       2012-07-11 00:47:30 +08:00
    @binux
    就是在ssh下,能够正确显示中文,日文和韩文,而不是问号,方框或乱码。
    ps:这个问题在windiws下我也没有彻底解决,始终有乱码存在。虽然不多。
    binux
        3
    binux  
       2012-07-11 00:49:22 +08:00   ❤️ 1
    @vking 通通用utf8
    Muninn
        4
    Muninn  
       2012-07-11 00:58:15 +08:00
    en_US.UTF-8
    vking
        5
    vking  
    OP
       2012-07-11 01:06:56 +08:00
    感谢楼上两位回复,明早试试。
    reus
        6
    reus  
       2012-07-11 03:54:26 +08:00
    字体也要有
    m1a0
        7
    m1a0  
       2012-07-11 08:22:44 +08:00
    主要是字体吧
    BOYPT
        8
    BOYPT  
       2012-07-11 14:41:31 +08:00
    跟服务器一点关系都没。

    你客户端换成非windows就自然解决了 233
    vking
        9
    vking  
    OP
       2012-07-11 15:48:00 +08:00
    @Muninn
    @binux
    不行!查阅了一下资料,主要是修改/etc/sysconfig/i18n
    I18N支持多种语言,但是同一时间只能是英文和一种选定的语言,例如英文+中文、英文+德文、英文+韩文等等;
    同时三种语言不可行.
    binux
        10
    binux  
       2012-07-11 16:59:08 +08:00
    @vking 这个是两个不同的问题,这也是为什么我一开始要问什么叫做「同时支持中文,日文和韩文」。

    支持「同时支持中文,日文和韩文」有两种理解:
    1、系统同时 *说* 中文,日文和韩文
    比如说当你输入了错误的指令,系统应该用什么语言报错。在这个场景下,系统不可能同时说一种以上的语言。即它不会同时用「中文,日文和韩文」报错。

    2、系统同时 *呈现* 中文,日文和韩文
    这就关系到文字的编码问题。既然是计算机,无论你看到的是中文,日文或者韩文,对于计算机都是二进制,而文字与二进制的转换关系就是编码。只要用正确的编码存储,用同样的编码读取,那么就会看到正确的文字,反之看到的就是乱码。
    而utf8同时能够正确编码中文,日文和韩文,只要保存的时候是utf8,读取的时候是utf8,展示的时候是utf8,最后加上有相应的字体,显示才是正确的。


    而你修改/etc/sysconfig/i18n解决的是问题一,而你遇到的是问题二。要解决问题二,保证
    1、保存的文件的编码(包括文件名)
    2、终端输出的编码
    3、终端连接工具的编码
    都是utf8即可
    reus
        11
    reus  
       2012-07-11 18:14:36 +08:00
    执行locale,输出是什么?
    lwjef
        12
    lwjef  
       2012-07-11 18:18:06 +08:00
    试试 Xshell 吧
    tty 下若要显示中文挺蛋疼的
    reus
        13
    reus  
       2012-07-11 18:41:57 +08:00
    http://www.wikihow.com/Say-Hello-in-Different-Languages
    打开这个网页看看Japanese和Korean的能不能正常显示,如果可以那字体没问题,如果不能就需要在本机安装带日文或韩文字符的字体
    再保证本机和vps都使用utf8的locale,应该就可以了
    Muninn
        14
    Muninn  
       2012-07-11 23:44:14 +08:00
    恩 我现在用xshell 在本地默认不是utf8 一定要改一下session的属性.
    utf能同时显示多种语言的 , 没有问题的吧.

    你说的i18n貌似早期的一些概念,在语言编码上 它说不支持两种非英语,那是比如gb2312和big5无法同时支持. 但是utf8就是一种编码,不是两种编码.不存在这个问题.

    你要说日期格式货币格式等等,不能同时支持,那的确是的.

    而你现在只是要显示字符. 所以我说
    敲locale命令看一下
    把LC_ALL和 LANG设置成en_US.UTF-8
    这样所有的设置都是美国英语,只是能显示所有的文字而已.
    kojp
        15
    kojp  
       2012-07-11 23:47:08 +08:00
    我也比较支持@BOYPT 的看法。
    期待,LZ结贴后能分享一下。
    BOYPT
        16
    BOYPT  
       2012-07-12 00:39:02 +08:00
    现代操作系统里面,默认不使用utf8的只剩windows了吧。
    reus
        17
    reus  
       2012-07-12 01:25:54 +08:00
    windows下用xshell是可以正常显示所有unicode字符的,session有编码设置,设成和vps的一致即可
    windows对unicode的支持很完善,没什么可吐槽的,系统内部使用的是utf-16编码,不是utf-8
    lwjefSub
        18
    lwjefSub  
       2012-07-12 06:32:30 +08:00
    难道要吐槽CJK不使用字母当文字吗 =。=
    vking
        19
    vking  
    OP
       2012-07-12 15:57:41 +08:00
    @Muninn 现在文件或者文件夹名中带中文,繁体中文和日文都能正常显示,韩文始终不行,我在终端下输入就是方框.
    迷茫了.
    用ssh和xshell都试过.
    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"
    LC_ALL=
    vking
        20
    vking  
    OP
       2012-07-12 16:04:41 +08:00
    @reus 请问一下您能够在您的xshell下尝试用韩文输入(复制粘贴也行),并且将文件名命名成韩文吗?
    我这里无论怎样都是方框.
    Muninn
        21
    Muninn  
       2012-07-12 16:06:51 +08:00
    应该是你输入的不是utf8编码吧. 可能是输入法的问题. 或者跟字体不知道有没有关系... 话说其实本质上xshell显示的东西和locale压根没有关系. 只需要文件中文字的编码和你xshell的session里设置的编码一致就能正常显示.
    vking
        22
    vking  
    OP
       2012-07-12 16:54:35 +08:00
    @Muninn 我从utf-8的txt复制出来的,xshell-terminal-translation设置为utf-8,的确出现了方框.,不知道哪里出现了问题.
    reus
        23
    reus  
       2012-07-12 17:37:40 +08:00
    @vking 下个gulim或者batang字体试试
    Muninn
        24
    Muninn  
       2012-07-12 17:44:38 +08:00
    @vking 把文件上传上去 直接cat看看能不能显示. 可以看是复制的时候出了问题,还是xshell显示不出来那个韩文.
    vking
        25
    vking  
    OP
       2012-07-12 19:20:16 +08:00
    @reus 果然是本地字体原因.
    但是还是有一个疑问.
    我在vps上安装了utorrent,下载了一些韩国音乐,在能够正确显示韩文的情况下,这些下载的音频文件名已经变成了问号(原本是韩文),说明的确有编码之间的兼容性.这又该如何解决?
    在web版的utorrent下能够正确显示所有韩文.
    nijux
        26
    nijux  
       2012-07-16 18:47:39 +08:00
    试试将浏览器的编码方式 设置成utf-8的呢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3207 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:35 · PVG 19:35 · LAX 04:35 · JFK 07:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.