java 错误: 编码GBK的不可映射字符
1.情景展示
在cmd窗口当中,使用javac命令编译java文件,报错信息如下:
错误: 编码GBK的不可映射字符,如何解决?
2.原因分析
根源:java文件中含有中文,不管是代码还是注释。
字符集冲突,windows中文版,默认的字符集为:GBK,而当你的java文件当中的汉字不是字符集:GBK时,javac进行编译的时候就会报错。
3.解决方案
方式一:以java文件原有编码运行;(推荐使用)
我们可以通过notepad++或者notepad打开该文件,在右下角可以查看到当前文件的字符编码。
白色是notepad++,黑色是notepad。
现在,我们知道将要编译的java文件的字符编码为:UTF-8,那我们下面就以这种格式来对文件进行重新编译;
编译成功。
方式二:改文件字符集;
将java文件的字符集编码改成:gb2312。
使用notepad打开该java文件;
右下角,底部,点击原先的字符集--》通过编码保存--》更多编码选项--》找到gb2312;
然后,Ctrl+S进行保存(而且,即使字符集改了,原先的中文保持不变,不会造成乱码,这是notepad的优点);
我们重新来到黑窗口,执行javac命令;
编译成功。
方式三:删掉文件当中的中文。
将注释当中的中文删掉,将代码中的中文改成拼音或者英文,即使你是UTF-8,也可以正常编译;
当然,这种方式比较笨,不推荐使用,但是,亲测可行。
本文来自博客园,作者:Marydon,转载请注明原文链接:https://www.cnblogs.com/Marydon20170307/p/15548013.html