`

文件夹拷贝

 
阅读更多
    package com.test; 
     
    import java.io.File; 
    import java.io.FileInputStream; 
    import java.io.FileOutputStream; 
     
    public class CopyFileUtil { 
     
        /**
         * <p>
         * 将sourceFolder文件夹下的内容复制到destinationFolder文件夹下
         * </p>
         * <p>
         * 如destinationFolder文件夹不存在则自动创建
         * </p>
         * 
         * @param sourceFolder
         *            源文件夹 如:C:\\aaa
         * @param destinationFolder
         *            目标文件夹 D:\\java
         * @throws Exception
         */ 
        public static void copyFolder(String sourceFolder, String destinationFolder) 
                throws Exception { 
            try { 
                new File(destinationFolder).mkdirs(); // 如果文件夹不存在 则建立新文件夹 
                File a = new File(sourceFolder); 
                String[] file = a.list(); 
                File temp = null; 
                for (int i = 0; i < file.length; i++) { 
                    if (sourceFolder.endsWith(File.separator)) { 
                        System.out.println(sourceFolder + file[i]); 
                        temp = new File(sourceFolder + file[i]); 
                    } else { 
                        System.out.println(File.separator); 
                        temp = new File(sourceFolder + File.separator + file[i]); 
                    } 
                    if (temp.isFile()) { 
                        FileInputStream input = new FileInputStream(temp); 
                        //System.out.println(temp.getPath()); 
                        FileOutputStream output = new FileOutputStream( 
                                destinationFolder + "/" 
                                        + (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(sourceFolder + "/" + file[i], destinationFolder 
                                + "/" + file[i]); 
                    } 
                } 
            } catch (Exception e) { 
                throw new Exception("复制整个文件夹内容操作出错", e); 
            } 
        } 
        public static void main(String[] args) { 
            try { 
                copyFolder("E:\\百度网页\\百度指数搜索_java.files", "E:\\百度网页\\重新生产\\百度指数搜索_java.files"); 
            } catch (Exception e) { 
                e.printStackTrace(); 
            } 
        } 
     
    } 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics