今天同事遇到一个比较神奇的问题,读取文件的第一行数据时,第一个字符永远为空,打开编辑器查看不为空,最后只有将第一个字符打印出来,显示为ascii 65279。
经过查询,UTF8+BOM格式的文件,文件第一个字符为ascii 65279.为固定情况。
最后通过识别第一个字符,进行跳过。
代码如下:
if(line.charAt(0) == 65279){ line = line.substring(1); }
还有点梦想的IT工程师
今天同事遇到一个比较神奇的问题,读取文件的第一行数据时,第一个字符永远为空,打开编辑器查看不为空,最后只有将第一个字符打印出来,显示为ascii 65279。
经过查询,UTF8+BOM格式的文件,文件第一个字符为ascii 65279.为固定情况。
最后通过识别第一个字符,进行跳过。
代码如下:
if(line.charAt(0) == 65279){ line = line.substring(1); }