IDEA中文出现乱码解决(转)
转自:http://lcl088005.iteye.com/blog/2284696
我是个idea的忠实用户,新公司的项目都是用eclipse做的,通过svn拉下代码后发现,注释的内容里,中文内容都是乱码。问过项目负责人,说可能是GBK编码。
但是,我通过idea的setting设置了编码,试了5种编码都没用,中文内容还是乱码。最后还是自己试出来解决方案。
详细的原因请参考最后的讲解。
乱码示例图
下面来介绍解决方法
第一步是点击右下角,如图所示的位置,然后选择GBK(由于我的项目之前是GBK编码,所以在这里我要是选择的GBK)。另外提醒一点,如果你的idea右下角没有这个按钮,请在你的编码界面中随意右键,然后选择“File Encoding”,效果一样。

第二步会出现如下提示,这里很重要,不要选错,先选择“Reload”,这里请严格按照我说的来,文章后面会告诉你如果选错会有什么后果
接着你就会看到乱码已经变成中文了,但是这对我还没结束,由于我将页面改成了GBK编码,但这并不是我想要的,我想要的是utf8的编码格式。
第三步,就是再次点击这个地方,然后选择UTF-8格式
最后一步就是选择Convert,这就结束了
相信有些朋友已经有点头绪了。这个“Reload”选择后不会改变文件和内容的编码格式,而是将IDE本身的解码格式由我原先的UTF-8换成了
GBK,由GBK的解码格式解GBK的文件就不会再看到乱码。而“Convert”是将GBK格式的文件内容转换成了UTF-8,同时将IDE的解码格式
也换成UTF-8。
所以之前说的,如果你第一次选择了“Convert”那么就会由原来的乱码弄成另一种乱码,反正我是没弄回来过。好在我是在git的branch上做的实验,我的源码文件还保留着,所以没有问题。
在以上的基础上,我猜测idea对java文件的编辑,应该是读取文件内容,并以IDE本身指定的encoding来进行解读。
举例,如果IDE的encoding为GBK,而java文件是UTF8那么IDE读取文件的时候就会显示乱码,如果这个时候使用上文所说的“Convert”来讲乱码转换成UTF8文件。
重点来了,这个时候文件本身是UTF8格式编码,转成UTF8格式应该是不会有问题的。但结果是,你由GBKencoding换成用UTF8的encoding去解码这个文件发现还是乱码。
原因是由于IDE用GBK读取UTF8文件时显示的是乱码,文件并没有乱码,而是IDE读取出来的文件由于encoding解码不对才显示的乱码。那么你这个时候使用“Convert”不过是将IDE读取的内容转换成了UTF8,而并非是将文件内容转换成UTF8。就这么一个微小的区别,但结果却是完全不可控制的。
IDEA中文出现乱码解决(转)的更多相关文章
- MyEclipse中文注释乱码解决
MyEclipse中文注释乱码解决 将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码 ...
- uploadify上传控件中文的乱码解决办法
uploadify上传控件中文的乱码解决办法 网站用的gb2312的编码,用uploadify上传控件上传中文时在IE能部分成功,FF,Chrome则完全失败,查找了一天原因,结果发现是页面编码问题, ...
- JMeter 查看结果树监听器响应数据中文显示乱码解决方法
查看结果树监听器响应数据中文显示乱码解决方法 by:授客 QQ:1033553122 问题描述 使用监听器-查看结果树(View Results Tree Listener)过程中发现,响应数据面 ...
- Eclipse中文注释乱码解决
将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码格式不同. 总结网上的建议和自己的体 ...
- Xshell4连接,Linux系统中文显示乱码解决办法
Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET NetSarang Xshell 4 Build 0120议.使用 ...
- mariadb插入中文数据乱码解决过程
基本情况: 系统:centos 7 mariadb安装方式:yum 乱码解决过程: 查看当前数据库编码(登录数据库后) # show variables like 'character%'; (上图为 ...
- linux 下vi /vim 中文汉字乱码解决
http://my.oschina.net/laserdance/blog/53474很多win下编译的配置文件(译码格式有utf8/gbk)上传到linux服务器上时打开汉字乱码 解决方法如下: 修 ...
- MDK(keil)4.7中文注释乱码解决
由于编码使用不统一导致别的开发环境下的文件在MDK(keil)下打开中文显示乱码,解决这一问题需要进行码制转换, 可以先将欲打开的文件转换成UTF-8格式(如在notepad中进行转换),也可以在打开 ...
- idea各种中文显示乱码解决大全
本文链接:https://blog.csdn.net/liqimo1799/article/details/81811153中文乱码问题分类: 编码普通中文乱码properties文件中文乱码cons ...
- 【Linux利用远程SSH连接】SecureCRT中文出现乱码解决办法 Linux服务器技术
1. 修改远程linux机器的配置 vim /etc/sysconfig/i18n 把LANG改成支持UTF-8的字符集 如: LANG="zh_CN.UTF-8″ 或者 ...
随机推荐
- SQL查询无限层级结构的所有下级,所有上级
无限层级结构的table1表,Id(主键),ParentId(父级id)查询某个Id的所有下级或所有上级,使用WITH AS,UNION ALL 查询 1.查询Id为1所有的下级 WITH T AS( ...
- linux系统搜索文件中关键字的位置
grep -Irn “ubuntu”-------即查出文件的目录路径
- 【Static Program Analysis - Chapter 4】格理论(Lattice Theory)与程序分析
# 从一个例子说起, **任务:给定这样一段代码,假设我们想分析出这段代码中,每个数值型变量和表达式的符号,即正数,负数或0.** 此外,还有可能出现两种情况就是: 1.我们无法分析出结果,即我们无法 ...
- Java | 原来 serialVersionUID 的用处在这里
本文首发于 http://youngzy.com/ 一直不太明白Java对象里 serialVersionUID 字段是做什么用的.有或者没有,它们之间有差别吗?除了Eclipse里提示的那个黄色的警 ...
- kylin 使用RESTful API 请求
目前根据Kylin的官方文档介绍,Kylin的认证是basic authentication,加密算法是Base64,在POST的header进行用户认证我使用的用户和密码是(格式:username: ...
- php数组函数大全
一.数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值 array_keys($arr);获得数组的键名 array_flip($arr);数组中的值与键名互换(如 ...
- Windows 环境下 wampserver 与 phpStudy 的环境配置
一. wamperserver 1.下载好安装到本地指定目录,官网下载地址 http://www.wampserver.com 2.根据自己实际的安装路径,D:\pc\wampserver\wamp ...
- Spring-boot(二)--thymeleaf
@Controller @RequestMapping("/") public class MessageController { private final MessageRep ...
- 关于vue-cli创建项目(小白)
vue-cli,都说是vue脚手架,一般cli是命令行的意思,一看就知道与node有关,其实脚手架是建筑工用的工具,给工人踩在上面干活的,这里借用它的意思,我觉得应该叫vue平台工具大家更容易懂,毕竟 ...
- mac shell 获取ip,自动启动文件http服务
因为工作原因,时常有文件传输需求. rz.nc.rsync都用过,各有各的好处. 但相对的,向别处推文件时总有各种麻烦,尤其是在给同事发送文件时. 然后就想到了提供http服务. 在环境变量中定义别名 ...