文件备份

    private boolean saveFiles(String fileName,String fileUrl) throws Exception {

        boolean flag = false;
        try {
            File srcDir = new File(fileUrl);    
            if(!(srcDir.exists()&& srcDir.isDirectory()))
                throw new Exception("此路径不存在!!");
            File[] files= srcDir.listFiles(
                    new FilenameFilter(){
                        public boolean accept(File dir, String name) {
                            boolean flag = false;
                            for(int i = 0;i < endName.length;i++){
                                if(name.endsWith(endName[i])){
                                    flag = true;
                                    break;
                                }
                            }
                            return flag;
                        } 
                    } 
                );

            System.out.println(files.length);

            File destDir= new File(fileName);
            if(!destDir.exists())
                destDir.mkdir();

            for(File f:files){
                FileInputStream fis = new FileInputStream(f);
                String destFileName = f.getName().replaceAll("\\.java$", ".jad");
                FileOutputStream fos = new FileOutputStream(new File(destDir,destFileName));
                copy(fis,fos); 
                fis.close();
                fos.close();
                flag = true;
            } 
        } catch (Exception e) {
            e.printStackTrace();
        }
        return flag;
    }

    private void copy(FileInputStream ips, FileOutputStream ops) throws IOException {
        int len = 0;
        byte[] buf = new byte[1024];
        while((len = ips.read(buf)) != -1){
            ops.write(buf,0,len); 
        } 
    }

其中,filename为目标路径,fileUrl为要备份的文件的路径。

endName是备份文件夹文件的后缀名的数组

private static final String[] endName = {".xlsx",".java",".txt",".jpg",".dll"};//文件类型
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值