今天手残设置了下这个Create UTF-8 Files with BOM
结果就各种报错,编译都通不过
UTF-8-BOM 科普小知识
UTF-8 BOM又叫UTF-8 签名。BOM, byte order mark。
UTF-8的BOM,是为了支持UTF-16,UTF-32,BOM签名的意思就是告诉编辑器当前文件采用何种编码,方便编辑器识别。但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行。
故障解决方法
1.将 A.java 文件复制出来
2. 然后用Notepad ++ 打开
会看到文件右下角有这个 UTF-8-BOM
3. 编码 转为UTF-8
4. 复制替换Intellij Idea 里面的文件
5. 重新编译,世界安好~
总结:
Intellij Idea 禁忌之一:千万不要设置
Create UTF-8 Files with BOM
参考博文: 错误:非法字符:“\ufeff”
参考博文:UTF-8 with BOM是什么意思