递归拷贝一个文件夹(java实现)

来源:互联网 发布:mac ps合并图层快捷键 编辑:程序博客网 时间:2024/05/21 17:53
package yuqiao.basic;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class FloderDtoE {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubtry {copyDirectory("D:\\xxxx","E:\\xxx");} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static boolean copyDirectory(String sourceFile,String desFile) throws IOException{File source=new File(sourceFile);if(!source.exists()){System.out.println(source.getAbsolutePath()+"=======源文件不存在=======");return false;}File des=new File(desFile);if(!des.exists()){des.mkdirs();}File[] file=source.listFiles();FileInputStream input=null;FileOutputStream output=null;for(int i=0;i<file.length;i++){try {if(file[i].isFile()){input=new FileInputStream(file[i]);output=new FileOutputStream(new File(desFile+"/"+file[i].getName()));byte[] b=new byte[1024];int len;while((len=input.read(b))!=-1){output.write(b,0,len);}input.close();output.flush();output.close();}else if(file[i].isDirectory()){copyDirectory(sourceFile+"/"+file[i].getName(),desFile+"/"+file[i].getName());}} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();return false;}}if(input!=null)input.close();if(output!=null)output.close();return true;}}

原创粉丝点击