如何修改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(最全)的更多相关文章

  1. Eclipse中 *.properties 文件编码设置

    Eclipse 中的默认编码格式为 ISO-8895-1,在此编码下中文的会显示如下的效果 解决方法 Windows --> Preference --> General Types -- ...

  2. Eclipse 设置新建文件默认编码为 utf-8 的方法

    选择编辑器顶部 Windows->Preferences->搜索jsp->选择utf-8编码->保存.

  3. eclipse中 properties文件编码问题

    1. Eclipse修改设置 项目中用到了配置文件,所以在Eclipse中新建.properties文件,文件中编辑了中文,在保存时Eclipse报出以下错误: 解决这个问题的方法: 依次选择: 菜单 ...

  4. [转]eclipse中 properties文件编码问题

    原文地址:https://blog.csdn.net/uestcong/article/details/6635123 1. Eclipse修改设置项目中用到了配置文件,所以在Eclipse中新建.p ...

  5. response设置输出文件编码

    在java后台的Action代码或者Servlet代码中用response的方法来设置输出内容的编码方式,有以下三个方法: 1.response.setCharacterEncoding(" ...

  6. Eclipse设置项目默认编码和换行符类型

    为了实现不同操作系统间的Eclipse项目移植的一致性. 一.建议设置如下: 1. 默认的项目编码统一用UTF-8 2. 默认的换行符用UNIX类型 二.具体的配置点见下图:

  7. IDEA - 设置所有文件编码为UTF-8格式

    问题一: File->Settings->Editor->File Encodings 问题二: File->Other Settings->Default Settin ...

  8. 解决 eclipse中properties文件编码问题

    菜单——>Preferences——>General——>ContentTypes——>Text——>Java Properties File,设置Default enc ...

  9. eclipse设置properties文件的字体颜色

    点击Window->preferences->搜素properties ============================ 其它设置字体颜色设置        =========== ...

随机推荐

  1. win10每次开机都会自检系统盘(非硬件故障)——解决方案2019.07.12

    1.最近反复遇到了这个问题,之前遇到这个问题就把系统重装了,没想到今天又遇到了,目前系统东西太多了,重装太麻烦了,就下决心解决一下. 2.不要使用网络上流传的修改注册表的方案,把注册表的那个键值删除那 ...

  2. 5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO

    POSIX 同步IO.异步IO.阻塞IO.非阻塞IO,这几个词常见于各种各样的与网络相关的文章之中,往往不同上下文中它们的意思是不一样的,以致于我在很长一段时间对此感到困惑,所以想写一篇文章整理一下. ...

  3. kali渗透综合靶机(四)--node1靶机

    kali渗透综合靶机(四)--node1靶机 靶机下载地址::https://download.vulnhub.com/node/Node.ova 一.主机发现 1.netdiscover -i et ...

  4. 2019-11-25-如何在国内发布-UWP-应用

    原文:2019-11-25-如何在国内发布-UWP-应用 title author date CreateTime categories 如何在国内发布 UWP 应用 lindexi 2019-11- ...

  5. WEB网站发布服务器IIS报错问题终极解决方案,查到问题点

    4本次错误webservice发布新服务器后,出现此错误. 解决方法: 找到dmp文件 dmp文件是啥?自己百度.简单的说就是黑匣子,记录程序崩溃前的操作,那么如何找到这个黑匣子呢? 1.启动 Win ...

  6. MVC中IActionFilter过滤器俄罗斯套娃的实现方式

    看mvc的源码我们知道,它是在 ControllerActionInvoker 类中执行 InvokeAction 方法来实现过滤器和action方法执行的. 通过查看源码我们知道,他是通过调用 In ...

  7. wpf 代码设置图片路径(后台和xamll)

    项目中经常使用背景图片,当一个小组共通开发时,路径的选择应该是在项目运行的固定文件夹下 此时,可用代码实现:pack://SiteOfOrigin:,,,/Images/Icons/HomePageB ...

  8. swift(三)字典数组操作

    //1.数组的概念和定义 var array = [,,,] var array1:Array = [,,,] var array2:Array<Int> = [,,,]; var arr ...

  9. Docker 清理日志

    docker 长时间运行后,日志文件会逐渐变大可以使用下面命令进行清除 #!/bin/bash echo "==================== start clean docker c ...

  10. Apicloud微信支付iOS可以,安卓返回-1的之避坑指南

    相信各位小伙伴在接入微信支付的时候,一定遇到过返回-1的这个问题,说实话,这个问题真的很恶心,微信开放平台提供的文档在关于-1这个问题的描述(可能的原因:签名错误.未注册APPID.项目设置APPID ...