欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java-将任意文件夹下的某一类型的文件复制到指定的文件夹

程序员文章站 2022-03-03 21:01:31
...
public class CopyDemo {
	public static void main(String[] args) throws Exception {
		File dir = new File("F:/文件夹");
		List<File> list1=new ArrayList<>();//装目录下所有文件路径
		List<File> list2=new ArrayList<>();//装指定文件路径
		getAllFile(dir,list1);
		
		//过滤得到指定文件
		for (int i = 0; i < list1.size(); i++) {
			if (list1.get(i).getName().endsWith(".xls")||list1.get(i).getName().endsWith(".xlsx")) {
				list2.add(list1.get(i));
			}
		}
		
		//将指定文件复制到指定目录
		for (File file : list2) {
			Files.copy(Paths.get(file.toURI()),new FileOutputStream("E:/copy/"+file.getName()));
		}
	}
	
	//列出当前目录所有文件
	private static void getAllFile(File f,List<File> list) {
		File[] fs = f.listFiles();
		for (File file : fs) {
			list.add(file);
			if (file.isDirectory()) {
				getAllFile(file,list);//递归操作
			}
		}
	}
}

相关标签: Java IO