黑马程序员技术交流社区

标题: JAVA编码?? [打印本页]

作者: 曹思敏    时间: 2013-6-7 23:00
标题: JAVA编码??
本帖最后由 孙百鑫 于 2013-6-22 00:46 编辑

读文件要使用和文件编码一致的编码,那么javac编译文件也需要读取文件,它使用什么编码呢?
作者: 张歆明    时间: 2013-6-7 23:38
额  高深的问题 哈哈
作者: a303466738    时间: 2013-6-8 00:10
我在这里时也遇到过这个问题呢?不过当学了编码模式后,自己试了几十遍:

手动建立一个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:}按格式来就好。

作者: 孙百鑫    时间: 2013-6-22 00:46
楼主您好~帖子长时间未作出回答,我已经将您的帖子改成已解决。如果有问题的话可以私密我哦~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2