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" 编译就直接会报错,错误提示是“未结束的字符串字面值”
本文探讨了使用不同编码格式(GBK与UTF-8)保存Java源文件的影响,展示了如何通过指定编码来避免编译错误与警告,对于Java开发者正确设置项目编码具有指导意义。
2380

被折叠的 条评论
为什么被折叠?



