earl86

解决 Java 程序的乱码问题

早上来上班,同事问在本机好好的 Java 程序,放到服务器上运行的时候,输出的中文字符总是显示乱码。我大致看了一下,猜测应该是 .java 文件编码和相关 Java 环境引起的问题。


同 事的本地开发环境是 Windows,默认文件编码为 GBK,服务器为 Redhat Linux,默认文件编码为 ISO-8859-1,两种字符编码并非完全一致。如果要保证 Java 程序中的中文字符能够被正确输出,最好能够自己精确地指定相关的参数。在编译时,指定源文件所使用的字符编码:

javac encoding gbk ChineseString.java

若是利用 ant 编译,可以在 build.xml 中有 javac 的那一样指定 encoding 属性:

<javac srcdir="${src}" destdir="${build}" encoding="gbk" debug="off">

在运行时,修改 JVM 的环境变量,将 file.encoding 属性指定为 GBK:

java -Dfile.encoding=gbk ChineseString

按照以上步骤编辑运行,即可以避免 Java 程序在处理中文时常出现的乱码问题。

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2021-10-22
  • 2022-02-22
  • 2021-06-27
  • 2021-11-29
  • 2021-07-25
  • 2022-02-15
  • 2021-11-09
猜你喜欢
  • 2021-12-09
  • 2021-05-18
  • 2021-06-19
  • 2021-06-20
  • 2021-09-03
  • 2021-10-12
  • 2021-09-22
相关资源
相似解决方案