使用字节流复制一个文件夹
package com.tanlei.Demo; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /* * 使用字节流复制一个文件夹 */ public class CopyDirDemo { public static void main(String[] args) { // TODO Auto-generated method stub try { CopyDirUtil.copy(new File("D:\\360Safe"),new File("D:\\360Downloads") ); System.out.println("成功"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } class CopyDirUtil{ public static void copy(File src,File dst) throws IOException{//src源文件夹 dst目标文件夹 dst.mkdirs();//创建目标文件夹 if(src!=null) { File[] files=src.listFiles();//遍历源文件夹中的所有文件和目录 if(files!=null) { for(File f:files) { if(f.isFile()) {//如果是文件夹 //复制文件 FileInputStream fileInputStream=new FileInputStream(f); FileOutputStream fOutputStream=new FileOutputStream(dst.getAbsolutePath()+"\\"+f.getName()); byte[] buff=new byte[1024*1024]; int len=0;//保存的是读到的字节个数; while((len=fileInputStream.read(buff))!=-1) { fOutputStream.write(buff, 0, len); } fileInputStream.close(); fOutputStream.close(); }else {//如果是文件 copy(f, new File(dst.getAbsolutePath()+"\\"+f.getName())); } } } } } }