public class Main {
public static void main(String[] args) {
String hello = "好";
System.out.println(hello);
}
}
保存以上代码所在的Main.java文件,编码字符流生成字节流的时候采用GBK编码方案
现在要正确编译Main.java文件,需要执行以下命令:
"javac -encoding gbk Main.java"
能够生成正确的Main.class文件
以“好”这个字符为线索,从写入Main.java文件,到编译生成Main.class文件中的相应字节流的整个过程如下图所示:
如果执行以下命令
"javac -encoding utf8 Main.java"
会有警告产生,并且会生成错误的Main.class文件
以“好”这个字符为线索,从写入Main.java文件,到编译生成Main.class文件中的相应字节流的整个过程如下图所示:
二、现在有如下Java代码片段:
public class Main {
public static void main(String[] args) {
String hello = "好";
System.out.println(hello);
}
}
保存以上代码所在的Main.java文件,编码字符流生成字节流的时候采用UTF-8编码方案
现在要正确编译Main.java文件,需要执行以下命令:
"javac -encoding utf8 Main.java"
能够生成正确的Main.class文件
以“好”这个字符为线索,从写入Main.java文件,到编译生成Main.class文件中的相应字节流的整个过程如下图所示:
如果执行以下命令 "javac -encoding gbk Main.java" 编译就直接会报错,错误提示是“未结束的字符串字面值”