在window XP系统桌面上新建文本文档,再打开写上“联通”两个字,保存之后再打开肯看?
只能看到一个大黑点!
如果有兴趣,可以看看,如果想要知道原因。请上网搜一下。如果找不到答案,请看回复。这里指的文本是用于Windows系统中的扩展名为.txt的文件。
基本原因在于:
Notepad(记事本)只支持四种格式:ANSI/Unicode/Unicode big endian/UFT-8,在程序中如何判断与读取这些不同格式的文本呢?
首先,不同编码的文本,是根据文本的前两个字节来定义其编码格式的。定义如下:
ANSI: 无格式定义;
Unicode: 前两个字节为FFFE;
Unicode big endian: 前两字节为FEFF;
UTF-8: 前两字节为EFBB,第三字节为BF;
由于有些文件不会写魔数,所以我们需要检测文件,对此感兴趣的朋友,可以关注这个开源项目字符编码测验--cpdetector