前提:Java 环境已经配置完好,且 Windows Cmd 可以正确的显示中文字符。如下图,
如果源代码中,不加任何与中文有关的字符,如下
// file name: HelloWorld.java
class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello,Welcome to Java World!");
}
}
那么,编译之后则会出现如下的正确结果,
编译通过,没有任何问题。
如果源代码中,加入了中文字符,如下是在注释部分和输出内容里都加入了中文字符,
// 文件名为 HelloWorld.java
// 测试 Windows Cmd 编译出现 "编码'GBK'不可映射字符" 的错误.
class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello,Welcome to Java World!我很好,朋友!");
}
}
那么,编译之后则会出现如下的结果,
编译不通过,出现错误 "编码GBK的不可映射字符"。注释部分和内容部分的中文字符都出现了错误。
要解决这个问题,只需要在编译的时候,增加一个 "-encoding UTF-8" 参数就可以了。
命令:
javac -encoding UTF-8 HelloWorld.java
或者
javac -encoding UTF-8 -d . HelloWorld.java
Over!