public static void main(String[] args) throws Exception { File file = new File("D:\\java\\java2211\\testIO"); File file1 = new File("E:\\testIO"); copyDir(file,file1); } public static void copyDir (File file, File target) throws Exception { FileInputStream fis = null; FileOutputStream fos = null; //过去file中所有的内容 ,target目标文件 if(file.isFile()){ //是文件 直接复制 fis = new FileInputStream(file); fos = new FileOutputStream(target); int readNum = -1; while((readNum = fis.read()) != -1){ fos.write(readNum); } fis.close(); fos.close(); } else{ //是文件夹 则遍历 target.mkdirs();// 创建目标文件夹 File[] files = file.listFiles(); for (File f : files){ File targetFile = new File(target , f.getName()); copyDir(f,targetFile); } } } }
D盘下的文件夹
复制到E盘的文件夹