Java使用字节流复制一个文件夹

来源:互联网 发布:java 二叉树 实现 编辑:程序博客网 时间:2024/05/21 07:48
package yt051502;import java.io.*;public class CopyDemo {public static void main(String[] args) {try {CopyDirUtil.copyDir(new File("D:\\firefox"),new File("D:\\yunteng"));//将D:\\firefox复制到D:\\yunteng下System.out.println("success");//成功就打印success} catch (IOException e) {e.printStackTrace();}}}class CopyDirUtil{public static void copyDir(File src,File dst) throws IOException{dst.mkdirs();//创建目标文件夹if(src!=null){File [] files=src.listFiles();//遍历源文件夹中所有的文件或者目录if(files!=null){for(File  f:files){if(f.isFile()){//复制文件FileInputStream fis=new FileInputStream(f);FileOutputStream fos=new FileOutputStream(dst.getAbsolutePath()+"\\"+f.getName());byte [] buff =new byte[1024*1024];//自定义一个字符缓冲区int len=0;//保存的是读到的字节个数while((len=fis.read(buff))!=-1){fos.write(buff, 0, len);}fis.close();fos.close();}else{copyDir(f,new File(dst.getAbsolutePath()+"\\"+f.getName()));//关键步骤,递归调用}}}}}}