Warning: file_put_contents(/datas/wwwroot/jiajiahui/core/caches/caches_template/2/default/show.php): failed to open stream: Permission denied in /datas/wwwroot/jiajiahui/core/libraries/classes/template_cache.class.php on line 55

Warning: chmod(): Operation not permitted in /datas/wwwroot/jiajiahui/core/libraries/classes/template_cache.class.php on line 56
如何将编码为GBK的Java源文件批量转为UTF-8 - 源码之家

如何将编码为GBK的Java源文件批量转为UTF-8

这篇文章给大家分享的是有关如何将编码为GBK的Java源文件批量转为UTF-8的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

最近在做一个项目,需要从以前的另外一个项目迁移大量源代码过来,但是由于另一个项目采用GBK编码格式,而新项目采用的UTF-8编码格式,如果直接把Java源代码复制到Eclipse中所有的中文信息都出现乱码。

将文本文件的编码格式从GBK转UTF-8的方式有很多,比较早以前我处理方式都是自己写程序,从文本文件中用GBK编码读取数据,转为String类型,然后通过UTF-8编码重新写入文本文件实现转码,现在经常使用 Apache Common 组件,用commons-io.jar实现文件的读取和写入,代码如下:

public static void main(String[] args) throws Exception {

    //GBK编码格式源码路径

    String srcDirPath = "D:\\dev\\GBK\\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的Java源文件批量转为UTF-8”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!