循环遍历目录及其子目录,打印文件名,有后缀名为.wma/.png的文件,有10个子目录,现在需要把.wma改成.mp4,.png改成.jpg,需要批量修改文件名。
replace(char oldChar, char newChar)
replaceAll(String regex, String replacement)
import java.io.File;
import java.io.FileFilter;
public class test {
public static void main(String[] args) {
String path = "C:\\Users\\ljh\\Desktop\\300-310"; //要遍历的路径
File file = new File(path); //获取其file对象
func(file);
System.out.println("修改完毕");
}
private static void func(File file){
File[] fs = file.listFiles();
for(File f:fs){
if(f.isDirectory()) //若是目录,则递归打印该目录下的文件
func(f);
if(f.isFile()){ //若是文件,直接打印
//找出不符合的格式
if(!(f.getName().contains("mp3")||f.getName().contains("jpg")))
//改名,以wma改成.mp3为例
/*if(f.getName().contains(".wma")){
String name=f.getName().replace("..wma",".mp3");
f.renameTo(new File(f.getParent()+"\\"+name));
}*/
System.out.println(f);
}
}
}
}