解决IntelliJ IDEA控制台输出中文乱码问题

好久没写了哈哈。阔别csdn创作有1年。

本次乱码情况是某次课堂作业。

基本情况如下,主播当时正在完成Spring 框架的单元测试实践,通过 JUnit 测试类来验证 Spring 容器的功能。

当无奈课堂上死活没能解决中文乱码问题。

基本尝试过以下措施:

如果你也有类似的问题可以试试,万一解决了呢?

不亚于:

1.设置 IDEA 全局编码

操作:进入 File(文件) → Settings(设置) → Editor(编辑器) → File Encodings(文件编码),将全局、项目、属性文件编码均设为 UTF-8。

2.配置 JVM 运行编码

方法1:针对单个测试 / 运行任务

第一步:

第二步:在左侧列表中找到对应的测试类(如 TestStudent 或 TestHelloSpring)

第三步:

在右侧配置区域,找到 "环境变量" 输入框(若未显示,可点击 "修改选项"→"环境变量" 展开)。

添加环境变量:

名称:JAVA_TOOL_OPTIONS

值:-Dfile.encoding=UTF-8

方法2:修改 IDEA 全局 VM 选项(对所有项目生效)
  1. 点击 IDEA 顶部菜单栏 "帮助"(Help) → "编辑自定义 VM 选项"(若提示 "是否创建文件",选择 "是")。

2.在打开的文件中,新增一行:

-Dfile.encoding=UTF-8

  1. 保存文件后重启 IDEA,所有通过 IDEA 启动的 JVM 进程都会默认使用 UTF-8 编码。

3.设置项目编译编码

在 pom.xml 中添加 maven-compiler-plugin 插件,指定编译编码为 UTF-8。

复制代码
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding> <!-- 新增编码配置 -->
                </configuration>

4.JDK 层面配置

在 JDK 安装目录 的 conf 文件夹中创建 java.options 文件,添加 -Dfile.encoding=UTF-8,强制 JDK 全局使用 UTF-8。

比如我用来编译的就是java23。

找到对应文件所在地后

创建一个java.options的文件。

内容如下:

-Dfile.encoding=UTF-8

然后保存,重启idea

然而这前四种方法,基本上都是网上各大帖子里搜来的,也许你们用其中某个方法就可以解决这个问题了。

然而主播这边依旧乱码。

但主播最后解决了。

解决策略如下:

5.代码层面强制编码【最终解决问题的办法】

通过 OutputStream 显式将字符串按 UTF-8 编码转为字节流输出,绕过环境编码冲突(最终解决问题的方案)。

说人话就是在代码编辑里强制要求输出UTF-8形式内容。

最终效果show:

OKOK。匆忙手打的一篇临时文章。希望能对你的问题有所帮助,期待下次再见。

相关推荐
nice_lcj52011 小时前
ThreadLocal 入门:它是怎么隔离数据的、为什么会导致内存泄漏
java·开发语言·后端·面试·并发编程·内存泄漏·threadlocal
秋天的怀念_David11 小时前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法
灿飞11 小时前
Kotlin与Java虚拟机八:控制流与 when:卫语句、上下文相关解析与穷尽性
java·kotlin
文丑颜不良啊12 小时前
LeetCode2021~2040题目解析
java·leetcode
bksczm12 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
liangbo713 小时前
Spring系列03:Bean 的三种注册方式
java·spring
余槐i13 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
SL_staff13 小时前
制造业订单交付总在最后一刻爆雷?用结构化计划模板打通跨系统协同断点
java·开源·全栈
做科研的周师兄13 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
有点小困97713 小时前
Spring Boot 异步任务 ClassLoader 踩坑实录:ClassNotFoundException 的诡异真相
java