答案是统一使用UTF-8编码。从源码保存、IDE设置、编译参数(javac -encoding UTF-8或Maven配置)、运行时系统属性(-Dfile.encoding=UTF-8)到外部资源处理全程保持UTF-8一致,确保中文正常显示,避免乱码与跨平台问题。
Java项目编码环境配置不当,容易导致中文乱码、编译失败或跨平台问题。关键在于统一源码、编译、运行和外部资源的字符编码。以下是具体配置方法。
Java源代码文件应始终保存为UTF-8格式,避免特殊字符(如中文注释、变量名)出现乱码。
使用 javac 编译时,如果源文件含非ASCII字符,需显式声明编码方式。
javac -encoding UTF-8 MyProgram.java
UTF-8
程序运行中打印中文可能出现乱码,尤其在Windows CMD环境下。
java -Dfile.encoding=UTF-8 MyProgram
properties 文件、JSON、XML 等资源配置也应使用UTF-8。
如\u4e2d\u6587)支持中文,建议改用 XML 格式或 ResourceBundle 处理多语言。基本上就这些。只要从编辑、编译到运行全程保持UTF-8一致,就能避免绝大多数编码问题。不复杂但容易忽略细节。