原因:由于JDK是国际版的,在编译的时候,如果我们没有用-encoding参数指定JAVA源程序的编码格式,则java.exe首先获得我们才做系统默认采用的编码格式,也即在编译JAVA程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如win2k,他的值为GBK),然后JDK就把我们的JAVA源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放到内存中.之后,javac把转换后的…
1. 问题概述: 程序很简单,打印一行字:你好,世界 (使用的工具是:win10自带的记事本.java的jdk:java development kit) 但是在打开终端进行编译时,报出了一个错误:编码 GBK 的不可映射字符 (0x8C) 2. 解决方案: 2.1 运行时指定编码方式,使用javac -encoding UTF-8 HelloWorld.java. 2.2 在保存文件时将文件编码方式保存为ANSI编码,然后即可正常编译运行.…
新建java文件,存储时Encoding选择了UTF-8, 由于语句中包含中文,javac编译时报错,提示"编码GBK的不可映射字符": 解决办法: 1.使用javac -encoding UTF-8 test.java  编译通过: 2.修改文件encoding编码为 ANSI,编译通过:…
决这个问题的思路: 在maven的编译插件中声明正确的字符集编码编码——编译使用的字符集编码与代码文件使用的字符集编码一致!! 安装系统之后,一般中文系统默认字符集是GBK.我们安装的软件一般都继承使用操作系统的默认字符集. 所以在很多中文XP win7上开发的同学,在使用maven(mvn compile)编译项目的时候,就会出现“编码 gbk 的不可映射字符”: 这个是由于代码使用的UTF-8,而maven编译的时候使用的GBK的缘故. 通过修改pom文件,可以告诉maven这个项目使用UT…
前提:JDK版本 >= 1.6会出现编译报错, 1.6前只会是警告 以下是javac的document: 遇到这种情况的原因是: 文件编码格式与编译器编译所选的encoding不同,有非英文字符注释时会导致此错误. 解决方法: 1:将文件保存格式改为以ANSI格式保存——可用记事本打开该文件,点击另存为,改为ANSI模式保存即可 2:改变java编译encoding为UTF-8…
使用命令行javac命令编译java文件, 提示错误:编码GBK的不可映射字符. 在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe会获得我们操作系统默认采用的编码格式. JDK根据操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),把源程序从默认编码格式转化为JDK内部默认的UNICODE格式放入内存中.然后把转换后的unicode格式的文件进行编译成.class类文件,此时.cl…
java源代码 今天在写java是出现一个编码错误,这里先将书上的java源代码贴出来. import java.io.Console; public class ConsoleTest { //用java.io.Console类输入 public static void main(String[] args) { Console con = System.console(); if (con != null) { String user = new String(con.readLine("E…
使用sublineText3编写了java代码,通过cmd javac编译 提示 错误:编码GBK的不可映射字符 解决方法 使用javac -encoding UTF-8 Person.java 结果: 没有错误 但是,这样子,实在是有点而复杂了,我这时候想到了,能否通过类似linux命令行中的别名来使javac自动带上参数呢? 结果,显然是可以的. 具体方法 新建一个alias.txt 新建一个快捷方式 将path/to/alias/file/filename改为你的alias.txt的路径就…
俗话说,温故而知新.本打算用dos回忆一下基础知识,没想到把自己绊倒了. 用Dos,当然就要回归原始,用记事本啦.下面用一个小练习,演示我遇到的绊脚石.之后,解决了简直笑死. 报错: Java文件编译出现“编码 GBK 的不可映射字符” (下图不是我的,我的忘记截图了.但是为了方便演示,我在网上找了相同问题的图片,之后的图都是我自己截我自己的了) 在notepad++里面的代码是在Myeclipse里面粘贴过来的,运行过的. 代码实例: import java.io.BufferedReader…
今天使用EditPlus写了一个小程序,用cmd运行时报错--"错误,编码GBK的不可映射字符". 处理办法是用EditPlus另存为时,把编码格式由UTF-8改为ANSI. 然后使用Notepad++打开发现java程序的注释是乱码. 也许Notepad++有别的办法处理这个问题,但从原生功能来说,写java程序,EditPlus优于Notepad++.…