|
|
发表于 2006-4-17 16:23:48
|
显示全部楼层
LINUX核心本身是不区分GBK和GB2312的,它都叫GB2312或cp936(外国人可能不了解中国国情)这一点你看下nls/cp936.c里的码表就知道了,底位是有小天A0的值的
据它说这个码表是来自微软的,可码表与GBK码表有一些不同,后来我用GBK的码表改了一个还行,后来我就一直用我自己的码表
另外那个cp936的函数也有问题,在GB18030编码中明确表示中文是变长码,可它本身并不支持,只支持双字节,其它我们的GBK也是变长的即单字节的和双字节的,没办法,如果真想用就自己改一下吧。 |
|