eclipse 设置所有文件编码为UTF-8(最全)
如何修改eclipse工作空间的字符集以及项目的字符集?
第一种方式:修改eclipse的配置文件
打开{ECLIPSE_HOME}/eclipse.ini文件
在最后一行加上属性:
-Dfile.encoding=utf-8
第二种方式:手动设置
1.修改文件编码
修改Java Class File的编码集

Window-->General-->Content Types-->Java Class File-->Default encoding-->UTF-8-->Update(utf-8大小写无所谓)
修改其它类型文件的字符集(CSS,HTML,JS,JAVA,XML等)

注意:设置Text时,CSS,HTML,JS,JAVA,XML等文件的编码集都会被修改为UTF-8,但是,jsp文件还是采用的iso-8859-1。

需要手动修改成utf-8,再点击Update。
2.更改eclipse的工作空间

Window-->General-->Workspace-->Text file encoding-->Other-->UTF-8-->Apply
3.检查Web目录下Files文件的编码集

CSS Files,HTML Files,JSP Files的字符集是否已经是utf-8,如果不是,记得更改。
4.检查XML目录下Files文件的编码集

至此,eclipse文件的字符集已经完全被设置为utf-8了。
5.修改项目的字符集

选中项目--》右键--》Properties--》Resource--》-->Text file encoding-->Other-->UTF-8-->Apply
拓展1:如何校验eclipse创建的java文件的字符集?
第一步:新建一个Test.java类。
public class Test {
public static void main(String[] args) {
String str = "这里必须用中文才能测试出来当前java文件的字符集!";
System.out.println(str);
System.out.println("JVM采用的怎样的字符集解析class文件:" + Charset.defaultCharset().name());
}
}
第二步:查看该文件所在的磁盘位置,并复制

选中该类--》右键--》Properties--》Location显示的就是该类所在的本地路径,复制该路径
第三步:打开cmd命令窗口
win+r--》输入:cmd--》确定
命令进入到该目录下

输入:d:--》回车进入到d盘根目录下--》cd D:\workspace-eclipse\yyproject\src\dzkjk\web\tools
第四步:使用java命令进行编译
输入:javac Test.java--》回车,查看执行结果。

说明:
要想在cmd下执行java命令,首先需要配置环境变量;
如果编译报错信息为:编码GBK的不可映射字符,则证明Test.java文件的编码集为UTF-8,否则,如果能够成功编译,则证明该文件的字符集为GBK。
测试的类只有用中文,测试测出来该类的字符集,因为:在脱离了eclipse后,无论java文件的编译还是运行都是有操作系统的语言决定的。
另外,你可能会说,在第二步中,直接右键属性,就能看到当前java类的字符集了。
这,没毛病,但是我们没办法这样就下结论说:该文件的字符集就是utf-8,不信?咱们继续探索。
拓展2:查看java文件字符集显示为utf-8,就说明它是以utf-8进行编码的吗?
我们在notepad++里测试一下。
第一步:打开notepad++,新建一个文件,并将上述的代码复制到该文件中

第二步:保存文件
将该文件保存到桌面,文件名为Test.java

第三步:将文件字符集设置为utf-8无BOM格式编码

进行保存。
第三步: cmd切换到桌面目录。

第四步:编译该文件
接下来就会发现有趣的事情:
如果,汉字你是从eclipse中复制过来的,编译报错信息一致。

但是,如果你是通过notepad++,进行过修改,且内容为中文。

你会发现:测试这两个字,在编译的时候没有报错。

我们把最后一行代码删掉,结果:编译成功。

桌面,也生成了Test.class文件。

我们使用java反编译文件,打开看看什么情况。

怎么样?乱码!!!
这说明什么?
第一,当java文件的字符集设置成utf-8后,在eclipse下进行开发,可以保证该文件里的内容就是utf-8,毋庸置疑;
第二,当java文件的字符集设置成utf-8后,在notepad++下进行开发,涉及到中文的地方,中文的字符集仍是GBK,而不是utf-8;
第三,当java文件的字符集设置成utf-8后,通过查看java文件的字符集的方式,并不能证明该文件就是utf-8编码格式;
第四,java反编译工具会自动解析class文件的字符集,然后以该文件的字符集解析文件内容。
第五步,还原java代码,重新编译。

刚才忘了导包,现在加上。
编译的时候,告诉java,该文件的字符集是多少。
javac -encoding utf-8 Test.java
编译成功。

-encoding 字符集,就是告诉javac.exe在执行编译命令时,以utf-8的格式进行编译。
(前面已经提到:脱离eclipse执行的java操作,在没有明确指明的情况下,无论java文件的编译还是运行都是由操作系统的语言决定的,Windows语言是GBK)
第六步,查看生成的class文件。

中文展示没有乱码,完美。
这也告诉我们,能用开发工具进行开发的时候,尽量借助eclipse来实现。
eclipse 设置所有文件编码为UTF-8(最全)的更多相关文章
- Eclipse中 *.properties 文件编码设置
Eclipse 中的默认编码格式为 ISO-8895-1,在此编码下中文的会显示如下的效果 解决方法 Windows --> Preference --> General Types -- ...
- Eclipse 设置新建文件默认编码为 utf-8 的方法
选择编辑器顶部 Windows->Preferences->搜索jsp->选择utf-8编码->保存.
- eclipse中 properties文件编码问题
1. Eclipse修改设置 项目中用到了配置文件,所以在Eclipse中新建.properties文件,文件中编辑了中文,在保存时Eclipse报出以下错误: 解决这个问题的方法: 依次选择: 菜单 ...
- [转]eclipse中 properties文件编码问题
原文地址:https://blog.csdn.net/uestcong/article/details/6635123 1. Eclipse修改设置项目中用到了配置文件,所以在Eclipse中新建.p ...
- response设置输出文件编码
在java后台的Action代码或者Servlet代码中用response的方法来设置输出内容的编码方式,有以下三个方法: 1.response.setCharacterEncoding(" ...
- Eclipse设置项目默认编码和换行符类型
为了实现不同操作系统间的Eclipse项目移植的一致性. 一.建议设置如下: 1. 默认的项目编码统一用UTF-8 2. 默认的换行符用UNIX类型 二.具体的配置点见下图:
- IDEA - 设置所有文件编码为UTF-8格式
问题一: File->Settings->Editor->File Encodings 问题二: File->Other Settings->Default Settin ...
- 解决 eclipse中properties文件编码问题
菜单——>Preferences——>General——>ContentTypes——>Text——>Java Properties File,设置Default enc ...
- eclipse设置properties文件的字体颜色
点击Window->preferences->搜素properties ============================ 其它设置字体颜色设置 =========== ...
随机推荐
- ts缓存批量下载合并
批量下载 curl -O https://cdn-host.media.yunxi.tv/recordM3u8/195820b37cec499da7a4b1b28269c7d0/tranbox/195 ...
- 【译】.NET Core 是 .NET 的未来
为什么要翻译咧,.NET 5 都宣布在 .NET Core 之后发布咯,何不再给 .NET Core 打打鸡血,我这个 .NET Core 的死忠粉. 原文:<.NET Core is the ...
- Kubernetes DaemonSet(部署守护进程)
Kubernetes DaemonSet(部署守护进程) • 在每一个Node上运行一个Pod• 新加入的Node也同样会自动运行一个Pod 应用场景:Agent 官方文档:https://kuber ...
- 【论文阅读】Objects as Points 又名 CenterNet | 目标检测
目录 Abstract Instruction 分析 CenterNet 的Loss公式 第一部分:\(L_k\) 第二部分:\(L_{size}\) 第三部分:\(L_{off}\) Abstrac ...
- c# Equal函数 and 运算符'==' (原发布 csdn 2017年10月15日 20:39:26)
1.==.!=.<.>.<= 和>= 运算符为比较运算符(comparison operator).C#语言规范5.0中文版中比较运算符的描述如下: 2.通用类型系统 3.值类 ...
- ASP.NET Core 进程外(out-of-process)托管
ASP.NET Core 进程外(out-of-process)托管 在本节中,我们将讨论 ASP.NET Core 中的Out Of Process Hosting. ASP.NET Core 进程 ...
- ASP.NET MVC过滤器学习笔记
1.过滤器的两个特征 1.他是一种特性,可以引用到控制器类和Action方法上.比如下图 这里控制器类和action方法都引用了过滤器,这个过滤器是用来做授权的 2.特征继承自FilterAttrib ...
- 简单聊聊实时视频rtmp
背景: 由于经常接触实时视频, 对实时视频略有了解. 实时视频是将视频流实时上传到服务器端进行解析, 由RTMP服务器处理. RTMP 服务器 自己动手搭建一个rtmp, 本文在 Linux环境中搭建 ...
- va_list 、va_start、 va_arg、 va_end 使用说明【转】
转自:https://blog.csdn.net/f110300641/article/details/83822290 在ANSI C中,这些宏的定义位于stdarg.h中: typedef cha ...
- 3-6 merge操作
In [1]: import pandas as pd In [6]: left =pd.DataFrame({ 'A':['A0','A1','A2','A3'], 'B':['B0','B1',' ...