编解码总结
一. 编解码
- Charset类
- 编解码
- 编码:字符—>字节
- 解码:字节—>字符
- 每个文件存储在磁盘上,都会指定一种编码格式。
- 常用编码方式
- ascii:使用7bit表示一个字符,共计可以表示128个字符。
- iso-8859-1:使用8bit(1个byte)表示一个字符,共计可以表示256个字符。ISO-8859-1向下完全兼容ASCII,是在ASCII基础上的一个扩展,即ISO-8859-1的第0~127个字符与ASCII完全相同。ISO-8859-1充分利用了一个字节,不会出现位的丢失。
- gb2312:对所有的汉字进行了编码,每个汉字都有一个对应的表示。GB2312使用2byte表示一个汉字。
- gbk:对GB2312的扩展,加入了一些汉字的生僻字。GBK完全兼容GB2312。
- gb18030:最完整的汉字字符集(简体中文)。
- big5:繁体中文的编码格式。
- unicode:使用2字节表示一个字符,是全世界范围内最完整的字符集,包含了所有国家的字符编码。unicode采用了固定的2个字节,这对于大部分欧美国家来说,原本只需要1个字节表示的字符也要占2个字节的空间,这在很大程度上的空间浪费,并不适合用来存储。
- utf:Unicode Translation Format,本质上来讲是一种存储方式,而前面介绍的都是编码方式。utf是unicode的实现方式。
- utf-8:**变长的字节表示形式:**使用1个字节表示英文,跟ascii完全相同;使用3个字节表示中文;最多使用6个字节表示一个字符。
- LE VS BE
- LE:Little Endian,小端,OXFFFE
- BE:Big Endian,大端,OXFEFF
- BOM:Byte Order Mark,字节序标记,