请问怎么设置locale为GB

为当前最终发行版之前的所有版本提供支持
回复
七夜
帖子: 16
注册时间: 2006-04-19 13:36
送出感谢: 0
接收感谢: 0

请问怎么设置locale为GB

#1

帖子 七夜 » 2007-04-15 22:35

我用pcre正则匹配中文,匹配出来是乱码.放在FreeBSD就正常显示.
我想应该是locale为zh_CN.UTF-8的问题。
根据网上的教程。

修改了 /etc/environment
LANG="zh_CN.GB18030 GB18030
LANGUAGE="zh_CN.GB18030"
LC_CTYPE="zh_CN.GB18030"
LC_ALL=

修改了 /var/lib/locales/supported.d/local

zh_CN.UTF-8 UTF-8
en_US.UTF-8 UTF-8
zh_CN.GB18030 18030

locale-gen

可是还是UTF-8编码
:~$ locale
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh
LC_CTYPE=zh_CN.GB18030
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
我的系统是Ubuntu 6.06 Server
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
送出感谢: 0
接收感谢: 7 次
联系:

#2

帖子 BigSnake.NET » 2007-04-15 22:37

不推荐
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
skyx
论坛版主
帖子: 9203
注册时间: 2006-12-23 13:46
来自: Azores Islands
送出感谢: 0
接收感谢: 1 次
联系:

#3

帖子 skyx » 2007-04-15 22:48

楼上正解
no security measure is worth anything if an attacker has physical access to the machine
头像
xhy
帖子: 3916
注册时间: 2005-12-28 1:16
系统: Ubuntu 12.10 X64
来自: 火星
送出感谢: 1 次
接收感谢: 0

#4

帖子 xhy » 2007-04-16 6:49

en_US ISO-8859-1
en_US.UTF-8 UTF-8
zh_CN.GB18030 GB18030
zh_CN GB18030
zh_CN.GBK GBK
zh_CN.GB2312 GB2312


LANG="zh_CN"
LC_CTYPE="zh_CN"
LC_ALL="zh_CN"
目前负债150多万
头像
sinoyster
帖子: 958
注册时间: 2005-10-16 13:24
来自: 四川成都
送出感谢: 2 次
接收感谢: 0
联系:

#5

帖子 sinoyster » 2007-04-16 8:43

local弄错了,local是默认locale,你新建一个en,一个zh文件分别把英文和中文的locale写在里面重新locale-gen
Thank you Ubuntu Team!!!!
I still can't belive this is free...
七夜
帖子: 16
注册时间: 2006-04-19 13:36
送出感谢: 0
接收感谢: 0

#6

帖子 七夜 » 2007-04-16 11:45

sinoyster 写了:local弄错了,local是默认locale,你新建一个en,一个zh文件分别把英文和中文的locale写在里面重新locale-gen
能否告诉我具体的修改步骤,我想修改为GBK
我从网上的一些方法,都修改不了.郁闷
头像
hualang0929
帖子: 1226
注册时间: 2006-11-11 10:23
来自: Mars
送出感谢: 0
接收感谢: 0
联系:

#7

帖子 hualang0929 » 2007-04-16 13:50

举例我的设置在/var/lib/locales/supported.d目录下有三个文件en zh local,没有的话可以自己新建。里面的内容分别为:

en为:

en_US.UTF-8 UTF-8

zh为:

zh_CN.UTF-8 UTF-8
zh_CN.GBK GBK
zh_CN.GB2312 GB2312

local为:

zh_CN.UTF-8 UTF-8

执行命令
$sudo locale-gen



lz把local改成GBK的就可以了,不过
BigSnake.NET 写了:不推荐
抬头望星空一片晴,我独行,夜已渐寒……
七夜
帖子: 16
注册时间: 2006-04-19 13:36
送出感谢: 0
接收感谢: 0

#8

帖子 七夜 » 2007-04-16 19:21

hualang0929 写了:举例我的设置在/var/lib/locales/supported.d目录下有三个文件en zh local,没有的话可以自己新建。里面的内容分别为:

en为:

en_US.UTF-8 UTF-8

zh为:

zh_CN.UTF-8 UTF-8
zh_CN.GBK GBK
zh_CN.GB2312 GB2312

local为:

zh_CN.UTF-8 UTF-8

执行命令
$sudo locale-gen



lz把local改成GBK的就可以了,不过
BigSnake.NET 写了:不推荐
我已经按您这样做了.并重启了一下机器.
再运行那个处理中文的程序,还是乱码啊.
换成utf8编码,又可以正常的处理中文.

从哪里可以看我的编码设置成功了?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#9

帖子 eexpress » 2007-04-16 19:43

alias cn='export LC_ALL=zh_CN.UTF-8'
alias en='export LC_ALL=C'
把里面的utf-8替换成gbk,gb18030,gb2312等。慢慢测试就是。
● 鸣学
七夜
帖子: 16
注册时间: 2006-04-19 13:36
送出感谢: 0
接收感谢: 0

#10

帖子 七夜 » 2007-04-17 10:55

我把 /var/lib/locales/supported.d/local
改为这样的:
zh_CN.UTF-8 UTF-8
en_US.UTF-8 UTF-8
zh_CN.GB2312 GB2312
alias cn='export LC_ALL=zh_CN.GB2312'
alias en='export LC_ALL=C

/etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games"
LANG="zh_CN.GB2312"
LANGUAGE="zh_CN:zh:en_US:en"

并重启过了,怎么还不行?
七夜
帖子: 16
注册时间: 2006-04-19 13:36
送出感谢: 0
接收感谢: 0

#11

帖子 七夜 » 2007-04-17 10:56

我把 /var/lib/locales/supported.d/local
改为这样的:
zh_CN.UTF-8 UTF-8
en_US.UTF-8 UTF-8
zh_CN.GB2312 GB2312
alias cn='export LC_ALL=zh_CN.GB2312'
alias en='export LC_ALL=C

/etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games"
LANG="zh_CN.GB2312"
LANGUAGE="zh_CN:zh:en_US:en"

并重启过了,怎么还不行?
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
送出感谢: 0
接收感谢: 7 次
联系:

#12

帖子 BigSnake.NET » 2007-04-17 12:27

七夜 写了:
hualang0929 写了:举例我的设置在/var/lib/locales/supported.d目录下有三个文件en zh local,没有的话可以自己新建。里面的内容分别为:

en为:

en_US.UTF-8 UTF-8

zh为:

zh_CN.UTF-8 UTF-8
zh_CN.GBK GBK
zh_CN.GB2312 GB2312

local为:

zh_CN.UTF-8 UTF-8

执行命令
$sudo locale-gen



lz把local改成GBK的就可以了,不过
BigSnake.NET 写了:不推荐
我已经按您这样做了.并重启了一下机器.
再运行那个处理中文的程序,还是乱码啊.
换成utf8编码,又可以正常的处理中文.

从哪里可以看我的编码设置成功了?
所以才说不推荐
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
hualang0929
帖子: 1226
注册时间: 2006-11-11 10:23
来自: Mars
送出感谢: 0
接收感谢: 0
联系:

#13

帖子 hualang0929 » 2007-04-17 12:37

晕,5楼不是已经说了,你还把所有东东加在 local 这个文件
抬头望星空一片晴,我独行,夜已渐寒……
回复

回到 “老旧版本支持”