zoukankan      html  css  js  c++  java
  • java 复制某一文件夹下的所有文件到另一个文件夹下

    场景:复制某一文件夹下的所有文件到另一个文件夹下

    代码:

    package cn.lj.java;
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.OutputStreamWriter;
    import java.io.Writer;
    
    public class FlowLogUpLoad {
    
        //文件夹的拷贝
        public static void copyDir(String sourcePathDir, String newPathDir) {
            File start = new File(sourcePathDir);
            File end = new File(newPathDir);
            String[] filePath = start.list();//获取该文件夹下的所有文件以及目录的名字
            if(!end.exists()) {
                end.mkdir();
            }
            boolean flag = false;
            for(String temp : filePath) {
                //添加满足情况的条件
                if(new File(sourcePathDir + File.separator + temp ).isFile() && temp.endsWith(".dat")) {
                    //为文件则进行拷贝
                    flag = copyFile(sourcePathDir + File.separator + temp, newPathDir + File.separator+temp );
                }
                if(flag){
                    System.out.println("文件:" + temp + ",复制成功!");
                }else{
                    System.out.println("文件:" + temp + ",复制失败!");
                }
            }
        }
    
        //文件的拷贝
        public static boolean copyFile(String sourcePath, String newPath) {
            boolean flag = false;
            File readfile = new File(sourcePath);
            File newFile = new File(newPath);
            BufferedWriter bufferedWriter = null;
            Writer writer = null;
            FileOutputStream fileOutputStream = null;
            BufferedReader bufferedReader = null;
            try{
                fileOutputStream = new FileOutputStream(newFile, true);
                writer = new OutputStreamWriter(fileOutputStream,"UTF-8");
                bufferedWriter = new BufferedWriter(writer);
                
                bufferedReader = new BufferedReader(new FileReader(readfile));
                
                String line = null;
                while((line = bufferedReader.readLine()) != null){
                    bufferedWriter.write(line);
                    bufferedWriter.newLine();
                    bufferedWriter.flush();
                }
                flag = true;    
            } catch(IOException e) {
                flag = false;
                e.printStackTrace();
            } finally {
                try {
                    if(bufferedWriter != null){
                        bufferedWriter.close();
                    }
                    if(bufferedReader != null){
                        bufferedReader.close();
                    }
                    if(writer != null){
                        writer.close();
                    }
                    if(fileOutputStream != null){
                        fileOutputStream.close();
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return flag;
        }
        
        public static void main(String[] args) {
            
            String sourcePath = "D:\home\before\20200120";
            String newPath = "E:\home\after\20200120";
            System.out.print("From:" + sourcePath);
            System.out.print("To:" + newPath);
            copyDir(sourcePath, newPath);
        }
    
    }
  • 相关阅读:
    windows2008R2新增磁盘处于脱机状态及介质写入受保护解决办法
    Oracle查询字段结果加单引号以及其他内容
    系统部署Oracle及cmd命令
    如何允许谷歌浏览器Adobe Flash Player一直运行
    浏览器被hao123篡改怎么办?
    Oracle数据库备份还原
    11_程序中的循环
    10_选择结构
    09_控制台输入
    08_运算符
  • 原文地址:https://www.cnblogs.com/liangxiaojin/p/12464849.html
Copyright © 2011-2022 走看看