IntelliJ IDEA 控制台中文乱码

2023-05-16

1. 预热

刚刚接触IntelliJ IDEA几天,在易用性方面的确比Eclipse好很多,比较智能,各种插件、工具都已经集成,和Mac OS X类似——开箱即用。

但是还是老大难问题——中文乱码,让我不得不花费了一些时间去折腾它,这一点就不如Eclipse了,没有遇到过乱码问题。

乱码问题表现在使用Web Server(Tomcat、Jetty)时输出日志或者直接System.out.println("中文字符")时会出现,如果仅仅执行类的main函数没有问题。
2. 环境

我针对乱码问题在不同的环境下进行了测试:
2.1. 系统语言:英文

我一直的习惯把系统语言设置为英文(强迫性记忆),这是第一次遇到乱码问题,分析了程序执行参数如下:

ps -ef | grep java

执行后得到如下的结果,省略了classpath:

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -d64 -Djava.awt.headless=true -Xmx512m -Dfile.encoding=MacRoman -classpath … org.jetbrains.idea.maven.server.RemoteMavenServer

分析参数和编码有关的只有一个:

-Dfile.encoding=MacRoman

2.2. 系统语言:中文

先说明一下如果系统语言设置为中文是没有乱码问题的,所以网上大量的重复文章的办法是把"File Encoding"设置为GBK或者GB2312,但是很多系统的编码不可能因为一个IDE而更改编码,所以这种办法直接无视!!!

切换到中文语言后分析执行参数,和英文语言下不同的是:

-Dfile.encoding=GB2312

3. 解决办法

相信看完了分析已经知道如何解决问题了,因为MacRoman编码不包含中文所以会出现乱码,而设置系统语言为中文的时候系统默认设置为GB2312编码,所以编码问题自然就没有了。
3.1. 步骤一

和项目编码统一,更改IntelliJ IDEA启动时的编码参数即可,打开下面的配置文件:

/Applications/IntelliJ IDEA 12.app/Contents/Info.plist

在IntelliJ IDEA 12.app文件右键选择“Show Contents”即可看到Contents目录。

找到key等于VMOptions位置,这里设置的虚拟机的参数,在后面追加下面的参数保存文件。

-Dfile.encoding=UTF-8

    PS:从12.1版本开始默认添加了这个参数

3.2. 步骤二

不要以为问题解决了,实际上只完成了一半,因为是运行Web Server时出现的乱码,所以Web Server的编码要和IDEA保持一致:



IDEA中设置Web Server的虚拟机编码

这样IDE的编码(控制台编码受IDE影响)和Web Server输出的编码一致问题解决。

启动Web Server之后再分析JVM的参数可以看到 -Dfile.encoding=UTF-8。


windows下改intellij安装目录下bin\idea.exe.vmoptions文件


如果以上中文还是乱码的问题:需要将原先的中文字符重新输一遍。


转自:http://www.kafeitu.me/tools/2013/03/26/intellij-deal-chinese-disorderly-code.html

如果是编辑器乱码的话

一、进入设置页。File-->Settings (快捷键:Ctrl+Alt+S)

二、进入IDE Settings,在File Encoding 中 的 Default encoding 改为 GB2312。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IntelliJ IDEA 控制台中文乱码 的相关文章

  • idea无限build解决方案

    点击File Settings Build Excution Deploment Compiler勾上build project automatically
  • idea开发中git合并的代码,

    方法一 将master主分支 合并到 子分支dev上 1 当前如果在dev分支上 先提交dev分支的代码到本地 然后推送到服务器 2 然后切换分支到master主分支上 先更新master主分支的代码到本地 然后主分支就是最新代码了 3 再
  • Intelij IDEA 配置Tomcat时找不到 “Application Server”

    由于公司突然断电 再打开idea的时候 tomcat就消失了 然后在网上搜了一下 没搜到自己乱点了一下 如图 plugins gt gt application servers View 是报红色 所以我在搜索栏搜索了tomcat 如果箭头
  • IDEA中部署git

    IDEA中使用 git 1 在Idea中配置 git 安装好 IntelliJ IDEA后 如果Git 安装在默认路径下 那么 idea 会自动找到 git 的位置 如果更改了 Git 的安装位置则需要手动配置下Git 的路径 选择 Fil
  • Idea如何导入一个SpringBoot项目

    最近公司要求开发工具要用Idea 作为一个eclipse的老员工 记录一下Idea中遇到的坑 刚开始用Idea从Git上导入一个项目时 遇到了很多坑 网上有很多方法 我不多做介绍 只说明一下我使用的方法 1 本地新建一个文件夹 从git上导
  • Intellij IDEA 自动生成 serialVersionUID

    Setting gt Inspections gt Serialization issues gt Serializable class without serialVersionUID 选上以后 在你的class中 Alt Enter就会
  • idea中创建xml,xml中路径报错

    1 先创建模板 2 新建xml 3 下面的路径可能会报红 4 解决方法
  • 解决 IDEA中springboot项目 修改页面无法生效问题

    解决 IDEA中springboot项目 修改页面无法生效问题 之前网上找了很多解决办法 都是无效的 所以找到解决办法后 先发个博客说一下 至此就完成了springboot 无需重启则对html修改生效 如出现偶尔无效时 请刷新浏览器 之前
  • IDEA学习(一)——IDEA的安装

    最近IDE从Eclipse转到了IDEA 抽时间熟悉了一下IDEA相关的东西 在此记录一下说不定可以帮到有需要的同学 我们就先从IDEA的安装说起吧 需要说明一点的是IDEA是比较吃内存的 所以在安装IDEA之前最好确认的内存不要太小 最好
  • Idea 修改默认的Maven配置及修改为阿里源

    每次使用Idea创建或者导入Maven项目的时候 Idea都会使用系统默认的Maven 此时 如果我们想使用自定义安装的Maven 需要在File gt other settings gt Settings for New Projects
  • 根据IDEA完成的简单学生成绩管理系统

    根据IDEA完成的简单学生成绩管理系统 要求 输入选项 当选择录入成绩的时候来输入各个学生的成绩 直到输入 1 结束输入成绩 最后输出输入了几名学生的成绩 然后循环到主界面 输入其他的选项 来查询学生成绩的平均分 最高分 最低分 然后退出系
  • IDEA下java程序的简单调试

    一 本次任务实现的是一个java的程序调试 首先本次进行调试的一个程序是实现从1累加到100的功能 是在IDEA下进行编写的 如图所示 将其运行之后得到的结果如图所示 把第12行的输出语句给取消掉注释之后再运行一次得到的结果如图所示 这里由
  • IDEA 启动失败(因为修改了vmoptions后无法启动)

    本人亲历 找过好多方法 才解决的 包括但不限于 找 vmoption文件的时候 说是在C盘 死活找不到 不过已经解决了 也成功了 还成功添加了破解码 后面出文 想添加破解码 要修改vmpotion 结果直接启动不了了 然后重启IDEA的时候
  • IDEA——》安装Scala插件

    推荐链接 总结 Java 总结 Mysql 总结 Redis 总结 Kafka 总结 Spring 总结 SpringBoot 总结 MyBatis MyBatis Plus 总结 Linux 总结 MongoDB 总结 Elasticse
  • 字节流、字节流、转换流、打印流

    字节流 字节流 转换流 打印流 一 字符流 概述 字符流只能操作有文字的文件 纯文本文件 字符流的操作原理 字符输入流 先把字节从文件中读取出来 使用的字节流读的 根据文件的编码集把字节数变为对应的字符 把字符 读到内存中 解码的过程 字符
  • Maven常见问题、异常、错误整理【持续更新】

    前言 之前也写过一篇与Maven相关的文章 这是第二篇对于Maven常见问题 常见异常的整理 开一篇新的文章一个原因是自己更换了新的IDE 之前使用myEclipse 现在换成IDEA 更重要的原因是新的文章对于处理Maven这类错误的方案
  • IDEA关联MySQL数据库时报错 “Server returns invalid timezone. Go to ‘Advanced‘ tab and set ‘server......”

    具体报错 Server returns invalid timezone Go to Advanced tab and set serverTimezone property manually 解决办法参考 https blog csdn
  • 蓝桥杯-快乐数-力扣

    202 快乐数 编写一个算法来判断一个数 n 是不是快乐数 快乐数 定义为 对于一个正整数 每一次将该数替换为它每个位置上的数字的平方和 然后重复这个过程直到这个数变为 1 也可能是 无限循环 但始终变不到 1 如果这个过程 结果为 1 那
  • 配置文件中的$和@

    配置文件中的 和 0 前言 借鉴文章 https blog csdn net Saintmm article details 124603343 https blog csdn net ster ben article details 11
  • Vue:用IDEA开发Vue,标签语法爆红问题处理

    一 场景描述 我在 IDEA 中 学习 Vue 课程 入门学习时 是在 html 文件中 script 引入 vue js 文件方式 此时 在 html 文件中用 v 标签 爆红 二 解决办法 打开 菜单栏 File Settings 选择

随机推荐