工作中碰到這些問題,不太了解,問了一下,被BS了,今天看了些資料,大致總結如下:
Unicode: 用二個字節表示世界各國語言的字符,中文當然也包括在內,占兩個字節,英文也一律占兩上字節。所以用Unicode保存英文可能會比較浪費空間。由于Unicode占兩個字節,比如一個漢字用unicode表示為594E,這個時候,就有字節序的問題了,到底是用big Ending寫成594E呢,還是用little Ending寫成4E59呢?
UTF-8: 也是國際通用的一種表示方法,它的單位是一個字節
0000 - 007F 0xxxxxxx 用一個字節就可以表示的字符
0080 - 07FF 110xxxxx 10xxxxxx 用二個字節保存的字符
0800 - FFFF 1110xxxx 10xxxxxx 10xxxxxx 需要用三個字節保存的字符
當讀這些二進制流的時候,就容易辯認出它所代表的字符。漢字是用三個字節來保存。
ANSI和GBK: ANSI英文用一個字節表示,中文的話用二個字節表示,區分中文編碼的方法是高字節的最高位不為0。
不同的國家和地區制定了不同的標準,由此產生了 GB2312, BIG5, JIS 等各自的編碼標準。這些使用 2 個字節來代表一個字符的各種漢字延伸編碼方式,稱為 ANSI 編碼。在簡體中文系統下,ANSI 編碼代表 GB2312 編碼,在日文操作系統下,ANSI 編碼代表 JIS 編碼
posted on 2010-05-23 16:57
Robert.Hu 閱讀(209)
評論(1) 編輯 收藏 引用 所屬分類:
零散知識