分页: 1 / 1

为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-04-30 1:04
科学之子
为什么unicode不像gb码那样,英文单字节,非英文多字节呢?
如果这样定义的话,unicode在英文和非英文混写时,都能有效利用空间,不会出现要么英文多占,要么非英文多占.

Thu May 1 15:36:14 CST 2014补充:
我的意思为什么unicode没有一个实现版本把所有国家的语言都定义成一个巨大的ansi扩展编码?
utf8:非英文编码长度不固定,处理难度大.
utf16,32:英文表示效率低.
ansi扩展:就像GB一样,只不过中国出的只支持自己,如果换成联合国,就支持所有国家了.

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-04-30 9:18
YeLee
那是utf8吧,在zh_CN.UTF-8里面,本来英文就是只占一个字节的吧,不同的只是编码方式而已,不然,C里就不会有char跟wchar_t的区别了吧。 :em20

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-04-30 10:52
eexpress
没分清unicode和utf8 utf16吧。不同的概念。

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-04-30 10:57
TeliuTe
在leafpad里试了下,保存为utf8,一个字母占一个字节

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-05-01 15:33
科学之子
TeliuTe 写了:在leafpad里试了下,保存为utf8,一个字母占一个字节
utf8,英文占一个,汉字占两个或多个.
utf16,英文占站两个,一个汉字占两个.
仔细想想,其实空间也不是问题,ansi扩展表示非英文也会字节增加.
真正的问题是长度的不确定性,处理起来会有难度.
如果有一个巨大的ansi扩展码,把多个国家的字符当成一个国家的字符来处理,就用不着变长了.

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-06-12 20:05
i990049
楼主知不知道linux为什么默认UTF-8编码而不是unicode编码?

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-12-05 1:58
rosynirvana
unicode只有字符映射关系,没规定具体编码
例如A的unicode编码是65,这个65怎么编码unicode是不管的,utf-8用一个字节,UCS-2用两个字节

Re: 为什么unicode不像gb码那样,英文单字节,非英文多字节呢?

发表于 : 2014-12-05 7:18
poloshiao
如果有一个巨大的ansi扩展码,把多个国家的字符当成一个国家的字符来处理,就用不着变长了.
ANSI
http://zh.wikipedia.org/wiki/%E7%BE%8E% ... 4%E6%9C%83
ASCII
http://zh.wikipedia.org/wiki/ASCII
EASCII(Extended ASCII,延伸美國標準資訊交換碼)
http://zh.wikipedia.org/wiki/EASCII
Unicode
http://zh.wikipedia.org/wiki/Unicode
UTF-8
http://zh.wikipedia.org/wiki/UTF-8
UTF-16
http://zh.wikipedia.org/wiki/UTF-16
UTF-32
http://zh.wikipedia.org/wiki/UTF-32
Base64
http://zh.wikipedia.org/wiki/Base64

Comparison of Unicode encodings
http://en.wikipedia.org/wiki/Comparison ... _encodings