黑马程序员技术交流社区

标题: 复制程序 [打印本页]

作者: 李艳兵    时间: 2015-11-21 10:04
标题: 复制程序
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

/**复制一个文件夹及里面的内容到指定目录
* @author Administrator
*
*/
public class Test14 {

        /**
         * @param args
         */
        public static void main(String[] args) throws Exception {
                //目标文件夹对象f2,及要复制到的路径
                File f2=new File("d:\\java1");
                File f1=new File("f:\\2");
                //传参到功能函数复制
                copyFile(f2,f1);
        }
        public static void copyFile(File f2,File f1) throws Exception{
                //如果f2是文件夹
                if(f2.isDirectory()){
                        //f1对象文件夹不存在
                        if(!f1.exists()){
                                //生成一个文件夹
                                f1.mkdir();
                                //列出原文件夹下一层的对象
                                File[] fs=f2.listFiles();
                                //遍历对象
                                for(File f:fs){
                                    //将对象的路径再封装成对象那个
                                        File f2File=new File(f2,f.getName());
                                        File f1File=new File(f1,f.getName());
                                        //递归复制
                                        copyFile(f2File,f1File);
                                }
                                
                        }
                //如果f2不是文件夹
                }else{
                        //把文件f2复制到f1中
                        BufferedInputStream bis=new BufferedInputStream(new FileInputStream(f2));
                        BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(f1));
                        byte[] buf=new byte[1024];
                        int len=0;
                        while((len=bis.read(buf))!=-1){
                                bos.write(buf, 0, len);
                                bos.flush();
                        }
                        bis.close();
                        bos.close();
                }
        }

}
作者: 萧未然    时间: 2015-11-21 20:05
学习了.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2