有的时候我们需要对文件名的后缀名进行操作,修改后缀名并不是进行转码。仅仅是对文件的后缀名进行修改。废话不多说直接上代码。
import java.io.File;
import java.util.Scanner;
/**
* Title:批量修改文件的后缀
*
* @author 高进
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要修改文件后缀名的文件夹:");
String path = sc.nextLine();
System.out.println("请输入修改前的后缀名:");
String beforeSuffix = sc.nextLine();
System.out.println("请输入修改后的后缀名:");
String afterSuffix = sc.nextLine();
reName(path, beforeSuffix, afterSuffix);
}
public static void reName(String path, String beforeSuffix, String afterSuffix) {
try {
File f = new File(path);
File[] fs = f.listFiles();
for (File subFile : fs) {
// 如果文件是文件夹则递归调用批量更改文件后缀名的函数
if (subFile.isDirectory()) {
reName(subFile.getPath(), beforeSuffix, afterSuffix);
} else {
String name = subFile.getName();
if (name.endsWith(beforeSuffix)) {
subFile.renameTo(new File(subFile.getParent() + "/" + name + afterSuffix));
}
}
}
System.out.println("全部修改完成!!!");
} catch (Exception e) {
System.out.println("修改异常");
e.printStackTrace();
}
}
}