最近在做RCP应用的时候,需要生成文件,而使用编码为UTF-8。在eclipse中调试时,生成的文件的没有任何问题,将项目提交后,有小组成员提交报告说生成的字符集在UTF-8的编码集下显示为乱码。经过调试查看,发现编码集采用了GBK编码,遂不解。
通过查找文件生成的代码,定位如下:
- FileWriter fileWriter = new FileWriter(file);
- fileWriter.write(content);
怀疑问题出现在FileWriter中,通过查看FileWriter的编码。在RCP的应用中加上了调试的信息。
- FileWriter fileWriter = new FileWriter(file);
- MessageDialog.openInformation(null, "字符集编码", fileWriter.getEncoding());
发现在eclipse中调试时,显示为utf8,而将RCP应用打包后,再调试时,显示为GBK。
最后经过查询时得知,在FileWriter是根据默认的平台来使用字符的编码。
如果要使用UTF-8的编码,则可改用OutputStreamWriter。
将代码改成如下:
- OutputStreamWriter outputStream = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
- outputStream.write(content);
测试,OK!
相关推荐
这个插件使得Java开发者能够在熟悉的Eclipse环境中无缝地创建、调试和管理Hadoop MapReduce项目,极大地提高了开发效率。 1. **Hadoop概述** Hadoop是一个开源框架,由Apache软件基金会维护,用于存储和处理大数据...
标题 "lombok-plugin-0.27-2019.1.7z" 指的是一个针对 IntelliJ IDEA 2019.1 版本的 Lombok 插件的压缩包。...在实际开发中,Lombok 不仅提高了编码效率,还减少了因手动编写和维护这些方法而可能出现的错误。
《Gradle Android Plugin与Java属性文件的整合应用》 在Android开发中,Gradle作为构建工具,以其灵活性和强大的功能深受开发者喜爱。本资源“gradle-android-plugin-1.02.zip”提供了一个独特的插件,它允许我们...
5. **IntelliJ IDEA 或 Eclipse 集成**: 对于 IDE 插件,源代码可能会包含特定的 XML 描述文件,如 IntelliJ IDEA 的 `.idea` 文件夹或 Eclipse 的 `.project` 和 `.classpath` 文件,用于在 IDE 内部集成 ...
总之,Lombok-intellij-plugin是提升Java开发效率的一大利器,它与IntelliJ IDEA的完美结合使得Lombok的功能得以充分发挥。对于任何使用IDEA 2020.1-2版本的Java开发者来说,安装并熟练掌握这个插件是提升开发体验和...
《Hadoop Eclipse Plugin 2.7.3:集成开发环境的利器》 Hadoop Eclipse Plugin 2.7.3是一款专为Hadoop开发者设计的Eclipse插件,它极大地简化了在Eclipse环境中进行Hadoop项目开发的工作流程。通过这个插件,开发者...
这会自动生成基础的项目结构,包括plugin.xml配置文件、Java源代码目录等。 5. **编写Java代码** 核心是实现Kettle的抽象类,如`AbstractStep`或`AbstractJobEntry`,并覆盖其中的方法。例如,`init()`方法初始化...
Lombok是一款非常流行的Java开发工具,它通过提供一系列的注解来简化代码,尤其是消除样板式的getter、setter、构造函数等。Lombok插件对于IDEA(IntelliJ IDEA)用户来说尤其有用,因为它可以与IDE集成,实现自动化...
总的来说,`lombok-plugin-0.16-2017.3.4.zip`插件是提升IntelliJ IDEA对Lombok支持的重要工具,通过它,开发者可以更流畅地在IDEA中使用Lombok,提高编码效率,减少冗余代码,使代码更加简洁易读。虽然这个版本相对...
【maven-eclipse-plugin】是Maven生态中的一个重要插件,它主要负责将Maven项目导入Eclipse这样的IDE中,以便于开发人员进行便捷的开发和管理。在使用Maven时,理解并熟练掌握这个插件的使用对于提高开发效率至关...
SoapUI – “导出请求和响应插件”基本上是Java存档文件(JAR),已对其进行编码以扩展Core SoapUI功能的功能。 从SoapUI 4.5.0到5.1.2的版本,该插件基本上与/兼容,无论它是Open Source还是Pro。 该插件有助于...
### JIRA Plugin 开发...本文档是一份针对JIRA插件开发的详细指南,涵盖了从开发环境的搭建到实际编码过程中可能遇到的问题及解决方法。通过这份文档的学习,可以帮助开发人员快速入门JIRA插件开发,并提高开发效率。
- `<encoding>`:指定源代码文件的编码格式,这里设置为UTF-8。 - `<compilerArguments>`:这里的`<extdirs>`元素指定了编译时额外的类路径,指向了项目的`lib`目录,这意味着编译器会将`lib`目录下的所有JAR包...
4. **Java开发流程**:项目可能涵盖了Java开发的整个生命周期,包括编码、单元测试、集成测试、构建、打包(如生成JAR或WAR文件)、部署等步骤。这涉及到Java编程规范、JUnit测试框架、Maven生命周期阶段(如compile...
5. 指定Maven Webapp配置:在`pom.xml`中,添加`maven-war-plugin`配置,确保生成的WAR文件包含正确的编码信息: ```xml ... <plugin> <groupId>org.apache.maven.plugins <artifactId>maven-war-plugin ...
Lombok是一款非常流行的Java开发工具,它通过注解的方式简化了JavaBean的编写工作,极大地提高了开发效率。这个压缩包“lombok2018.1-2019.3.zip”包含了从2018.1版本到2019.3版本的Lombok插件,适用于那些希望在IDE...
sonar.plugins=sonar-java-plugin,sonar-findbugs-plugin ``` 在标签中,"sonar-runner"是SonarRunner的简称,"sonar插件"表明SonarRunner可以与各种SonarQube插件配合,以支持不同编程语言和工具的分析。而"sonar-...
2. **自动构建与更新**:一旦项目被添加到工作区,m2e会自动识别项目的POM.xml(Project Object Model)文件,并根据其中的配置信息管理项目的构建过程。当依赖项发生变化时,m2e会自动更新项目,确保代码与依赖库的...
这可以通过Eclipse的“Help”菜单 -> "Install New Software" -> "Add" 来完成,然后提供下载的插件JAR文件路径(如hadop-eclipse-plugin-2.7.x.jar)。安装后,用户需要配置Hadoop集群的连接信息,包括HDFS的URL、...
- **.properties** 文件:标准 Java 属性文件,键值对以等号分隔,如 `key=value`。 - **XML 文件**:XML 格式的配置文件,可以包含复杂的结构和数据。通过 XPath 表达式,可以选取特定节点的值作为 Maven 属性。 *...