我在这里时也遇到过这个问题呢?不过当学了编码模式后,自己试了几十遍:
手动建立一个java文件Demo.java,并保存。
此时Demo.java文件的编码为ANSI,中文操作系统下就是GBK.然后使用javac命令来编译该源文件。"javac Demo.java”并没有问题。
然后再建一个Demo2.java文件,选择UTF-8保存。此时Demo.java文件编码就是UTF-8了。再使用”javac Demo2.java”来编译,此时控制台会出现警告信息,也出现了乱码。
总结如下:
Demo.java其实javac采用了操作系统默认的GBK编码解码读取字节,这个编码正好也是Demo.java文件的编码,二者一致,所以不会出现乱码情况。
Demo2.java是因为javac采用了GBK编码解码我们读取的字节。因为字节是UTF-8编码的,所以会出现乱码。如果不信的话你可以自己试试。
那么解决办法呢?
目前不知道~~~~~~{:soso_e112:}按格式来就好。
|