一、认识字符编码:
1、Java中String的默认编码为UTF-8,可以使用以下语句获取:Charset.defaultCharset();
2、Windows操作系统下,文本文件的默认编码为ANSI,对中文Windows来说即为GBK。例如我们使用记事本程序新建一个文本文档,其默认字符编码即为ANSI。
3、Text文本文档有四种编码选项:ANSI、Unicode(含Unicode Big Endian和Unicode Little Endian)、UTF-8、UTF-16
4、因此我们读取txt文件可能有时候并不知道其编码格式,所以需要用程序动态判断获取txt文件编码。
ANSI :无格式定义,对中文操作系统为GBK或GB2312
UTF-8 :前三个字节为:0xE59B9E(UTF-8)、0xEFBBBF(UTF-8含BOM)
UTF-16 :前两字节为:0xFEFF
Unicode:前两个字节为:0xFFFE
例如:Unicode文档以0xFFFE开头,用程序取出前几个字节并进行判断即可。
5、Java编码与Text文本编码对应关系: