个人作为笔记记录在csdn上,暂时也没有对其进行深入了解,只做出处理方案。在windows 环境下,使用java文件流读取文本文件时,会出现第一个字符为未知字符"?" ,其他字符完整。而且第一个字符显示为?但是用equals比对发现并非是"?"号,google之,了解到bom编码标记。使用 16进制打印输出结果:
只要出现该头的16进制编码为这种字符便可以断定该文本文件的编码方式了。
bom编码标记:
bom全称是:byte order mark,汉语意思是标记字节顺序码。只是出现在:unicode字符集中,只有unicode字符集,存储时候,要求指定编码,如果不指定,windows还会用默认的:ANSI读取。常见的bom头是: