问题现象
在 Java 文件编译或运行时,IDE 控制台或代码编辑区出现类似以下乱码提示:
E:\...\FileHelper.java:92: ����: �Ҳ�������
此类乱码通常由编码配置冲突或文件存储格式异常导致。
核心解决步骤
1. 统一编码配置
- 全局设置
进入File → Settings → Editor → File Encodings
,确保以下三项均设置为 UTF-8:
Global Encoding
、Project Encoding
、Default encoding for properties files
(注:配置文件默认使用 ISO-8859-1 编码,需强制指定为 UTF-8) - VM 参数修正
在 Android Studio 安装目录的bin
文件夹下,编辑idea64.exe.vmoptions
文件,末尾追加:
-Dfile.encoding=UTF-8
重启 IDE 使配置生效。
2. 清理异常编码记录
-
定位项目根目录下的
.idea/encodings.xml
文件,检查是否存在非 UTF-8 编码记录(如 GBK、GB2312)。
示例修正:
<!-- 错误示例 --> <file url="file://$PROJECT_DIR$/src/main/java/Test.java" charset="GBK" /> <!-- 修正为 --> <file url="file://$PROJECT_DIR$/src/main/java/Test.java" charset="UTF-8" />
删除所有非 UTF-8 条目,或直接清空文件后由 IDE 自动重建。
3. 修复已损坏文件
- 若个别文件仍显示乱码,手动执行转码:
- 用记事本或 Notepad++ 打开乱码文件,选择
编码 → 转换为UTF-8
; - 保存后重新加载到项目中。
- 用记事本或 Notepad++ 打开乱码文件,选择
4. 验证字体兼容性
- 进入
File → Settings → Editor → Font
,确认当前字体支持中文字符集(推荐使用微软雅黑
或Consolas
)。
注意事项
- 备份项目:操作前建议压缩项目目录,防止配置覆盖导致不可逆损失。
- 环境变量:确保系统环境变量无冲突(如
LANG
或JAVA_TOOL_OPTIONS
强制指定其他编码)。 - Gradle 配置:在
gradle.properties
中添加org.gradle.jvmargs=-Dfile.encoding=UTF-8
避免构建过程编码异常。