从网上下载了教程 结果为一个文件夹里很多压缩文件,解压拷贝太慢,所以写了以下程序: import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; class Copy { private FileInputStream in; private FileOutputStream out; public void start(File fileR, String fileW,String format) {//format 要复制文件的格式 if (!fileR.isFile()) {// 如果是目录 File subFile[] = fileR.listFiles();// 得到所有子文件和目录 for (int i = 0; i < subFile.length; i++) { if (!subFile[i].isFile()) {// 得到所有目录 File temp[] = subFile[i].listFiles();// 得到所有子文件 System.out.println(temp.length); for (int j = 0; j < temp.length; j++) { try { String name = temp[j].getName(); if(name.endsWith(format)){ this.in = new FileInputStream(temp[j]); name = fileW + name; System.out.println(name); this.out = new FileOutputStream(new File(name)); byte b[] = new byte[(int) fileR.length()]; int r = 0; while ((r = in.read(b)) != -1) { out.write(b); if (r == 0) {//防止是空文件,发生死循环 break; } } in.close(); out.flush(); out.close(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } } } } public class CopyFile { public static void main(String args[]) { File fileR = new File("E:/Java Video/王勇"); String fileW = "E:/Java Video/test/"; Copy c = new Copy(); c.start(fileR, fileW,".avi"); } }