我是靠谱客的博主 可耐麦片,最近开发中收集的这篇文章主要介绍关于IDEA中“Error(1,1) java:非法字符:\ufeff”的解决办法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

    • 原因
    • 解决办法
        • 方式一
        • 方式二:
    • 关于BOM
        • 什么是BOM?
        • 存在的问题?

原因

当我们在idea中运行该项目时会出现如下一个错误:
在这里插入图片描述
这就是表示在文件的开头添加了BOM导致的,所以才会导致IDEA不能正确读取.java文件从而程序出错。

解决办法

方式一

  1. 选择你出错的那个文件右击。选择remove BOM 即可。
    在这里插入图片描述

方式二:

  1. 在IDEA的右下角把文件转为其他的格式再转回UTF-8,这种只能针对少的文件,可是太多的就很麻烦了。

关于BOM

这里就先来说明一下什么是BOM。

什么是BOM?

BOM是用来判断文本文件是哪一种Unicode编码的标记,其本身是一个Unicode字符("uFEFF"),位于文本文件头部。

在不同的Unicode编码中,对应的bom的二进制字节如下:
FE FF UTF16BE
FF FE UTF16LE
EF BB BF UTF8
因此我们可以根据文件头部的几个字节和上面的表格对应来判断该文件是哪种编码形式。

存在的问题?

虽然BOM字符起到了标记文件编码的作用但是他并不属于文件的内容部分,所以会产生一些问题:

1.在某些使用场景下就会有问题。例如我们把几个JS文件合并成一个文件后,如果文件中间含有BOM字符,就会导致浏览器JS语法错误。

2.PHP就不能识别bom头,PHP并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正文的一部分。根据嵌入式语言的特点,这串字符将被直接执行(显示)出来。由此造成即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部,因为在html一开头有这3个字符呢!

最后

以上就是可耐麦片为你收集整理的关于IDEA中“Error(1,1) java:非法字符:\ufeff”的解决办法的全部内容,希望文章能够帮你解决关于IDEA中“Error(1,1) java:非法字符:\ufeff”的解决办法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部