java——拷贝文件夹方法

 public void copyFolder(String oldPath, String newPath) {   
        try {   
            (new File(newPath)).mkdirs(); //如果文件夹不存在 则建立新文件夹   
            File a=new File(oldPath);   
            String[] file=a.list();   
            File temp=null;   
            for (int i = 0; i < file.length; i++) {   
                if(oldPath.endsWith(File.separator)){   
                    temp=new File(oldPath+file[i]);   
                }   
                else{   
                    temp=new File(oldPath+File.separator+file[i]);   
                }   
                
                if(temp.isFile()){   
                    FileInputStream input = new FileInputStream(temp);   
                    FileOutputStream output = new FileOutputStream(newPath + "/" +   
                            (temp.getName()).toString());   
                    byte[] b = new byte[1024 * 5];   
                    int len;   
                    while ( (len = input.read(b)) != -1) {   
                        output.write(b, 0, len);   
                    }   
                    output.flush();   
                    output.close();   
                    input.close();   
                }   
                if(temp.isDirectory()){//如果是子文件夹   
                    copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i]);   
                }   
            }   
        }   
        catch (Exception e) {   
            System.out.println("复制整个文件夹内容操作出错");   
            e.printStackTrace();   
        }   
    }  

 

posted @ 2016-02-19 11:49  舞阳  阅读(190)  评论(0编辑  收藏  举报