如图。当我获取文本第一行(如:CALL_ID|AH|34)数据是以”|“分割的。然后读出来的结果是”CALL_ID“的count为8。
而我将CALL_ID作为key后放在map里。再get("CALL_ID")就为null。 此情况只在文本第一行第一个字符串有。(第一行绝对没有空格,用trim也没用)。
windows环境,文本为utf-8编码,用ansi会出现中文乱码。
求大神解救。
另外,用avro序列化再反序列化也出现了这个问题。
------解决方案--------------------
------解决方案--------------------
楼主换个编辑器试试,换个notepad++,或editplus试试。
我之前遇到过类似的情况,在notepad++ 里面输入一段字符串,然后分割后第一个字符串前面总有一个空格。
但是 如果用windows默认的记事本的notepad记事本输入的话,就没有那个空格了。
如果这个还有问题的话,那应该就是编码格式的问题了。
------解决方案--------------------
UTF-8 with BOM前3个字节必然是EFBBBF,它不是文件内容,所以你读的时候要去掉
或者你不要用记事本编辑,换个能用UTF-8无BOM的,比如Editplus,或者你直接用Winhex这种软件把前面三个字节删除。。