首先,有必要了解下记事本文件的几种编码方式:

四种常见文本文件编码方式研究
ANSI、UNICODE 、UNICODE big endian、UTF-8四种格式编码存在差别,简要介绍如下:
ANSI编码:
无文件头(文件编码开头标志性字节)
ANSI编码字母数字占一个字节,汉字占两个字节,
回车换行符 单字节 十六进制表示为0d 0a
UNICODE编码:
文件头,十六进制表示为FF FE
每一个字符都用两个字节编码
回车换行符 双字节 000d 000a
Unicode big endian编码:
文件头十六进制表示为FE FF ,
后面编码是把字符的高位放在前面,低位放在后面,正好和Unicode编码颠倒。
回车换行符,双字节,十六进制表示为0d00 0a00
UTF-8 编码:
文件头,十六进制表示为EF BB BF。
UTF-8是Unicode的一种变长字符编码,数字、字母、回车、换行都用一个字节表示,汉字占3个字节.
回车换行符,单字节,十六进制表示

本文介绍了ANSI、UNICODE、UNICODE big endian和UTF-8四种文本文件编码方式的区别,并以中文"你好"为例,详细解释了Unicode和UTF-8编码的工作原理。在处理Unicode编码文件时,读取文件流需指定encoding为unicodelittle,而写文件时,encoding指定为unicode会产生unicode big endian格式,需注意相应设置。
最低0.47元/天 解锁文章
1513





