侧边栏壁纸
  • 累计撰写 49 篇文章
  • 累计创建 23 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

实现简单的拷贝文件夹

阿砖
2024-04-30 / 0 评论 / 0 点赞 / 71 阅读 / 2310 字

待拷贝的文件夹内容

代码实现

  public static void main(String[] args) {
        File srcDir = new File("./dss");
        File destDir = new File("./dss_copy");

        copyDir(srcDir, destDir);
    }


    public static void copyDir(File srcDir, File destDir) {
        if (!destDir.exists()) {
            // 如果文件不存在,创建文件夹(包括子文件夹)
            destDir.mkdir();
        }
        Arrays.stream(srcDir.listFiles()).forEach(file -> {
            if (file.isDirectory()) {
                // 如果是文件夹,则递归调用
                copyDir(file, new File(destDir, file.getName()));
            } else {
                // 如果是文件,则直接复制
                try {
                    FileInputStream fileInputStream = new FileInputStream(file);
                    File destFile = new File(destDir, file.getName());
                    FileOutputStream fileOutputStream = new FileOutputStream(destFile);
                    byte[] buffer = new byte[1024];
                    int len;
                    while ((len = fileInputStream.read(buffer)) != -1) {
                        fileOutputStream.write(buffer, 0, len);
                    }
                    fileInputStream.close();
                    fileOutputStream.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

结果

0

评论区