I/O接口递归

来源:互联网 发布:淘宝手办店黑店 编辑:程序博客网 时间:2024/05/19 02:18

把一个文件夹里得所有文件和子文件复制到到另一个文件甲

import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class FileCopyDemo {    public void copyFile(String path,String newPath) {        File oldfile=new File(path);        File destFile=new File(newPath);        for(File file:oldfile.listFiles()) {            File subfile=new File(destFile.getAbsoluteFile()+File.separator+file.getName());            if (file.isDirectory()) {                if (!subfile.exists()) {                    subfile.mkdirs();//通过递归寻找文件并遇到文件夹创建文    //件夹遇见文件创建文件                }                copyFile(file.getAbsolutePath(),subfile.getAbsolutePath());            }else {                copy(file,subfile.getAbsoluteFile() );            }        }    }    //复制文件到新文件夹    public void copy(File oldFile,File newFile) {        try {            FileInputStream fis=new FileInputStream(oldFile);            FileOutputStream fos=new FileOutputStream(newFile);            int len=-1;            byte [] date=new byte[1024];            while ((len=fis.read(date))!=-1) {                fos.write(date, 0, len);            }            fis.close();            fos.flush();            fos.close();        } catch (FileNotFoundException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }    public static void main(String[] args) {        FileCopyDemo fcd=new FileCopyDemo();        fcd.copyFile("E:/javaworkspace/java2","F:/java2");    }}
原创粉丝点击