在 Eclipse 中解决 Java 乱码问题,一般要从 文件编码、项目编码、控制台编码、运行环境编码 几个方面一起检查。下面按常见场景给你一套完整方案。
Window → PreferencesGeneral → WorkspaceUTF-8(推荐)Apply and Close⚠️ 已存在的文件不会自动转换,需要重新创建或转换编码
PropertiesResourceUTF-8Apply and Close如果某个文件特别乱码:
PropertiesResource → 编码选择 UTF-8Run As → Run ConfigurationsCommon 标签页UTF-8System.out.println(new String("中文".getBytes("UTF-8"), "UTF-8"));
读文件一定要指定编码:
BufferedReader br = new BufferedReader(
new InputStreamReader(
new FileInputStream("test.txt"), "UTF-8"));
❌ 错误写法:
new FileInputStream(file)
✅ 正确写法:
new InputStreamReader(
new FileInputStream(file), StandardCharsets.UTF_8)
写文件:
new OutputStreamWriter(
new FileOutputStream(file), StandardCharsets.UTF_8)
<%@ page pageEncoding="UTF-8" %>
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
| 场景 | 原因 |
|---|---|
| 中文变 ?? | 文件编码非 UTF-8 |
| 控制台乱码 | Run Config 编码不对 |
| 读写文件乱码 | 未指定 charset |
| 数据库乱码 | DB / JDBC 编码不一致 |
统一使用 UTF-8(工作空间 + 项目 + 文件 + 代码 + 数据库)
如果你能告诉我:
我可以给你更精准的解决方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。