转自:http://my.oschina.net/binny/blog/62959
最近在做一个项目,需要从以前的另外一个项目迁移大量源代码过来,但是由于另一个项目采用GBK编码格式,而新项目采用的UTF-8编码格式,如果直接把Java源代码复制到Eclipse中所有的中文信息都出现乱码。
将文本文件的编码格式从GBK转UTF-8的方式有很多,比较早以前我处理方式都是自己写程序,从文本文件中用GBK编码读取数据,转为String类型,然后通过UTF-8编码重新写入文本文件实现转码,现在经常使用 Apache Common 组件,用commons-io.jar实现文件的读取和写入,代码如下:
(commons-io 下载见:http://commons.apache.org/io/download_io.cgi)
//GBK编码格式源码路径
String srcDirPath = "D:\\dev\\workspace\\masdev\\mas\\src";
//转为UTF-8编码格式源码路径
String utf8DirPath = "D:\\UTF8\\src";
//获取所有java文件
Collection<File> javaGbkFileCol = FileUtils.listFiles(new File(srcDirPath), new String[]{"java"}, true);
for (File javaGbkFile : javaGbkFileCol) {
//UTF8格式文件路径
String utf8FilePath = utf8DirPath+javaGbkFile.getAbsolutePath().substring(srcDirPath.length());
//使用GBK读取数据,然后用UTF-8写入数据
FileUtils.writeLines(new File(utf8FilePath), "UTF-8", FileUtils.readLines(javaGbkFile, "GBK"));
}
很简单的几行代码,就可以批量将GBK格式的java文件转为UTF-8格式。 基本上所有文本文件的编码转换都可以采用这种方式。
分享到:
相关推荐
老项目采用GBK编码格式,而新项目采用的UTF-8编码格式,如果直接把Java源代码复制到Eclipse中所有的中文信息会出现乱码。所以写了个小的方法类,将java文件的编码格式从GBK转UTF-8
以上就是关于“使用Eclipse插件批量将Java源代码文件的编码从GBK(或其他编码)转为UTF-8”的详细解释,希望对你在进行编码格式转换时有所帮助。在实际操作中,还需要根据具体的插件和Eclipse版本进行适当的调整。
总的来说,"Eclipse项目的GBK编码转为UTF-8插件"是解决GBK到UTF-8编码转换问题的有效工具,它简化了开发者的工作流程,提高了代码管理的效率。对于那些经常需要处理不同编码格式项目的人来说,这样的工具无疑是非常...
// 读取GBK编码的文件内容并转为UTF-8 String content = new String(Files.readAllBytes(sourcePath), Charset.forName("GBK")); Files.write(Paths.get(targetFilePath), content.getBytes(Charset.forName("UTF...
要将Java源代码文件的编码从GBK转为UTF-8,我们可以按照以下步骤操作: 1. **读取GBK编码的文件** 使用`FileUtils.readFileToString(File file, Charset charset)`方法读取GBK编码的文件。首先,创建一个`File`...
这个过程会遍历项目中的所有文件,包括代码文件、资源文件等,将它们的编码从GBK转为UTF-8。 4. 检查与修复:转换完成后,务必检查项目中的每个文件,特别是包含中文字符的文件,确保没有出现乱码。如果有部分文件...
2. **转换编码**:软件允许用户将文件从一种编码格式转换为另一种,例如从GBK转为UTF-8,以确保代码在不同环境下的兼容性。 3. **字符串解码**:在Java代码中,字符串常量可能被错误地编码,工具能帮助开发者正确...
在实际工作中,我们可能会遇到需要转换编码的情况,例如从GBK转为UTF-8,以解决多语言支持问题或兼容性问题。 标签"源码 工具"暗示了这个话题与处理源代码和使用工具进行转换相关。在开发环境中,开发者经常使用像...
假设脚本名为`iconv_batch.sh`,存储在当前目录下,且需要将`~/workspace/XXXProject`目录下的所有`.java`文件从GBK转为UTF-8,可以这样运行: ```bash cd ~/workspace/XXXProject ./iconv_batch.sh . "*.java" ...