隐形字符65279

       最近开发的时候遇到一个问题:程序需要匹配消息的首字符,但是匹配失败了。

首先,一条数据出现了异常,但是人工检查了一下并没有发现问题,数据格式是对的。

然后,用程序将消息的第一个字符取出来打印(String.charAt(0)),结果打印什么都不显示。

最后,将字符转成int输出,输出结果:65279.

    然后网上了解了一下这个字符。这个字符的作用总的来说,就是标识文本文件编码是utf-8的。

然后排查产生原因,经过多次尝试。发现是在编辑文本文件时,另存为选择编码的时候,保存成了utf-8,这个默认是会加上这个隐形字符的。选择UTF-8-无BOM就不会产生这个字符了。如下图:

隐形字符65279_第1张图片

在这里记录一下,同样的坑不可以进两次。

你可能感兴趣的:(编码,65279,隐形字符)