public class myname{
public static void main(String[] args){
System.out.println("小徐爱编程");
}
}
通过DOC进行编译, 提示:错误:编码 GBK 的不可映射字符 (0xBD)
检查源码未发现语法错误
尝试在源代码中加入 set names_gbk;
通过DOC编译,结果同上
尝试失败,撤销尝试内容。
解决方法:
方法一:编译指令使用 javac -encoding UTF-8 myname.java 可以正常编译运行
方法二:将记事本文档另存为ANSI编码 再javac myname.java 编码运行 可以正常运行
说明:
UTF-8(8位元,Universal Character Set/Unicode Transformation Format)是针对Unicode的一种可变长度字符编码。它可以用来表示Unicode标准中的任何字符,而且其编码中的第一个字节仍与 ASCII相容,使得原来处理ASCII字符的软件无须或只进行少部分修改后,便可继续使用。因此,它逐渐成为 电子邮件、 网页及其他存储或传送文字的应用中,优先采用的编码。
ANSI是一种字符代码,为使计算机支持更多语言,通常使用 0x00~0x7f 范围的1 个 字节来表示 1 个英文字符。超出此范围的使用0x80~0xFFFF来编码,即扩展的ASCII编码。