java运行时,内存中使用的字符编码是unicode。

编译java程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放入内存中。我们最终获得的.class文件是内容以UNICODE编码格式保存的类文件。(引自http://hank4ever.iteye.com/blog/581463

可以使用-encoding参数指明编码方式:javac -encoding UTF-8 XX.java

 

运行jar包时,结果出现乱码可能就是未指定编码方式,在中国,windows的默认编码是GBK,故需要如下指定

java -Dfile.encoding=utf-8 -jar project.jar

 

相关文章:

  • 2022-01-19
  • 2021-11-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-24
猜你喜欢
  • 2021-07-08
  • 2022-12-23
  • 2021-08-09
  • 2022-01-27
  • 2021-09-28
  • 2021-10-01
  • 2021-11-11
相关资源
相似解决方案