notepad++编辑器写Java代码,无法编译出现错误:编码GBK的不可映射字符
今天在学习“流程控制”一节,用notepad++写代码时,一直报错,无法编译。看了好多遍代码,代码完全正确,非常纳闷。
代码:
编译结果:
最后查阅了一些资料,终于找到了解决方案
**所报错误:编码GBK的不可映射字符
**错误原因:
由于JDK是国际版的,在编译的时候,如果没有用-encoding参数指定JAVA源程序的编码格式,则javac.exe 首先获得操作系统默认采用的编码格式,也即在编译java程序时,若不指定源程序文件的编码格式,JDK首先获 得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK 就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放入内存中。
**解决方案:
1.英文版notepad++
菜单:Configure --> Options --> JDK Tools --> Compiler
2.中文版 notepad++
菜单:设置→首选项→新建,选择编码方式为ANSI.
①打开设置--首选项
②点击新建
③编码中选中“ANSI”
④点击关闭
注意:有些读者可能设置修改过后发现仍然不可以编译成功,这时就有可能是保存的java文件依然是原来格 式,需要重新在修改过后的编辑器里写代码,再编译即可运行