文件编码转换。可以将GBK、UTF-8等编码文件互转
将某个目录下的一种格式的文件,转换为另一种格式
1、引入依赖
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
2、修改代码中的编码和目录,运行main方法即可转换
package com.study.test;
import java.io.File;
import java.io.IOException;
import java.util.Collection;
import org.apache.commons.io.FileUtils;
/**
*
* @描述: 编码转换器
* @版权: Copyright (c) 2020
* @公司:
* @作者: 严磊
* @版本: 1.0
* @创建日期: 2020年7月1日
* @创建时间: 下午9:46:31
*/
public class CodeConverter
{
private static final String sourceCode = "GBK";//文件源编码
private static final String targetCode = "UTF-8";//文件要修改为的编码
private static final String[] file_type = new String[] {"java"};//文件类型后缀
public static void main(String[] args) throws IOException
{
//GBK编码格式源码路径
String sourceDirPath = "C:\\Users\\YL\\Desktop\\Spring 注解\\代码\\spring-annotation\\src";
//转为UTF-8编码格式源码路径
String targetDirPath = "C:\\Users\\YL\\Desktop\\Spring 注解\\代码\\utf8";
//获取所有java文件 参数(扫描文件夹,扫描文件扩展名,是否扫描子文件目录)
Collection<File> javaSourceFileCol = FileUtils.listFiles(new File(sourceDirPath), file_type, true);
for (File javaSourceFile : javaSourceFileCol)
{
//输出格式文件路径
String targetFilePath = targetDirPath + javaSourceFile.getAbsolutePath().substring(sourceDirPath.length());
//使用sourceCode格式读取数据,然后用targetCode格式写入数据
FileUtils.writeLines(new File(targetFilePath), targetCode, FileUtils.readLines(javaSourceFile, sourceCode));
}
}
}