例如,我读取一个UTF-8编码,格式为.txt的文件:中间是tab符分隔开的,所以我可以将其转为数组:{“3600”,“1900”,“我”},然后我想对“3600”进行Integer.parseInt(),但是报错,说格式不对。
然后我将“3600”打开细看了一下:char[] c = tokens[0].toCharArray(),里面的结果是{,3,6,0,0},也就是说,用UTF-8编码的文件,第一位会有个“,”的,然后暴力解决,用了substring(1)去掉了那个逗号,就可以用Integer.parseInt()了。
后来尝试了一下,ANIS编码的文件,就没有这个“,”但是后面的中文要乱码。
所以还是用UTF-8格式的文件,处理中文数据,这个bug好有意思,切记。