我以前写的文本文件的编码方式:
(1) ANSI: ASCII码,英文字符1个字节,汉字2个字节。
ASCII编码的文件头没任何信息,直接从第一个字符开始。
例如:“A啊”编码 41 B0 A1
41
-'A'
B0 A1
-'啊',0xB0-0xA1=0x0F即区号为15,0xA1-0xA1=0即位号为0.
即“啊”是位于15区0位。
(2)Unicode编码,(little endian)
每个字符两个字节,低位在前,高位在后。先读出的是低位,后读出的是高位,大多数情况下都是这种编码。
例如abcde的编码:
FF FE 61 00 62 00 63 00 64 00 65 00
FF FE:编码方式
61 00 - 'a'
‘a’的unicode编码是 0x0061
(3)Unicode big endian编码:
abcde的编码:
FE FF 00 61 00 62 00 63 00 64 00 65
FE FF:表示这是big endian编码
00 61 - ‘a’
即高位在前,地位在后,和人们阅读和书写顺序相同。
---hoodlum1980
2008-3-3 17:04:32
[[it] 本帖最后由 hoodlum1980 于 2008-3-28 12:25 编辑 [/it]]