java:编码utf-8的不可映射文件
项目场景:
提示:当我导入他人提供的工程项目时,提示编码格式发生错误
问题描述:
导入他人的工程时有时候每个页面的编码格式并不统一,所以才会出现File was loaded in the wrong encoding: 'UTF-8’错误:程序运行时会提示具体java页面,出现的java错误两类型:编码utf-8的不可映射字符。
在网上看了很久的博客也尝试了了一些方法:
如下图:
选择Setting->File Encodings->Project Encoding选择utf-8,Default encoding for properties files 也选择 UTF-8
这样设置过后右键项目然后右键单击项目点击Build Module重新加载项目之后,也并不管用
最后最后我才找到了具体的解决方法!!!!
此处为神仙博主链接:https://segmentfault.com/a/1190000020198231
原因分析:
打开错误的编码页面,会发现中文乱码问题
![在这里插入图片描述](https://img-blog.csdnimg.cn/img_convert/54cb210eac524ef5a8468c41c6b04822.png#pic_center)
报错如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/img_convert/c760e6895f6bdd7855ac4345d9315c3b.png#pic_center)
解决方案:
1.打开乱码文件,在软件右下角将当前页面的编码格式改为GB2312,弹出的提示消息中选择Reload;
如图操作
上述操作相当于我们告知IDEA说,此文件的编码是GB2312,你使用GB2312渲染并重新打开。然后乱码字符就能正常显示了。但此操作并没有改变文件的编码格式,也就是说该文件的编码仍然是gb2312,并不符合我们对代码编码必须是utf-8的要求。所以编译仍然会报错。
2.重新将GB2312编码的页面改回utf-8,这时候页面的乱码问题就解决了;
如下动图所示:
到此:问题解决