首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java中拷贝剔除文件或目录

2013-08-24 
java中拷贝删除文件或目录,// 复制文件public static void copyFile(File sourceFile, File targetFile) t

java中拷贝删除文件或目录,

    // 复制文件    public static void copyFile(File sourceFile, File targetFile) throws Exception {        BufferedInputStream inBuff = null;        BufferedOutputStream outBuff = null;        try {        if(sourceFile.isDirectory()){        return;        }            // 新建文件输入流并对它进行缓冲            inBuff = new BufferedInputStream(new FileInputStream(sourceFile));                        if(!targetFile.exists()){            try{            targetFile.getParentFile().mkdirs();            targetFile.createNewFile();            }catch(Exception e){            System.out.println(targetFile.getAbsolutePath());            throw e;            }            }            // 新建文件输出流并对它进行缓冲            outBuff = new BufferedOutputStream(new FileOutputStream(targetFile));            // 缓冲数组            byte[] b = new byte[256];            int len;            while ((len = inBuff.read(b)) != -1) {                outBuff.write(b, 0, len);            }            // 刷新此缓冲的输出流            outBuff.flush();        } finally {            // 关闭流            if (inBuff != null)                inBuff.close();            if (outBuff != null)                outBuff.close();        }    }    /**     *      * @param filepath     * @throws IOException     */    public static void del(String filepath) throws IOException {        File f = new File(filepath);// 定义文件路径        if (f.exists() && f.isDirectory()) {// 判断是文件还是目录            if (f.listFiles().length == 0) {// 若目录下没有文件则直接删除                f.delete();            } else {// 若有则把文件放进数组,并判断是否有下级目录                File delFile[] = f.listFiles();                int i = f.listFiles().length;                for (int j = 0; j < i; j++) {                    if (delFile[j].isDirectory()) {                        del(delFile[j].getAbsolutePath());// 递归调用del方法并取得子目录路径                    }                    delFile[j].delete();// 删除文件                }            }        }    }

热点排行