Java 目录和文件的复制-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Java 目录和文件的复制

简介: 1.复制一个目录及其子目录、文件到另外一个目录 //复制一个目录及其子目录、文件到另外一个目录 public void copyFolder(File src, File dest) throws IOException {   if (src.

1.复制一个目录及其子目录、文件到另外一个目录

//复制一个目录及其子目录、文件到另外一个目录

public void copyFolder(File src, File dest) throws IOException {

  if (src.isDirectory()) {

  if (!dest.exists()) {

  dest.mkdir();

  }

  String files[] = src.list();

  for (String file : files) {

  File srcFile = new File(src, file);

  File destFile = new File(dest, file);

  // 递归复制

  copyFolder(srcFile, destFile);

  }

  } else {

  InputStream in = new FileInputStream(src);

  OutputStream out = new FileOutputStream(dest);

   

  byte[] buffer = new byte[1024];

   

  int length;

 

  while ((length = in.read(buffer)) > 0) {

  out.write(buffer, 0, length);

  }

  in.close();

  out.close();

  }

  }

 

  1. private void copyFolder(File src, File dest) throws IOException {
  2.  
    if (src.isDirectory()) {
  3.  
    if (!dest.exists()) {
  4.  
    dest.mkdir();
  5.  
    }
  6.  
    String files[] = src.list();
  7.  
    for (String file : files) {
  8.  
    File srcFile = new File(src, file);
  9.  
    File destFile = new File(dest, file);
  10.  
    // 递归复制
  11.  
    copyFolder(srcFile, destFile);
  12.  
    }
  13.  
    } else {
  14.  
    InputStream in = new FileInputStream(src);
  15.  
    OutputStream out = new FileOutputStream(dest);
  16.  
     
  17.  
    byte[] buffer = new byte[1024];
  18.  
     
  19.  
    int length;
  20.  
     
  21.  
    while ((length = in.read(buffer)) > 0) {
  22.  
    out.write(buffer, 0, length);
  23.  
    }
  24.  
    in.close();
  25.  
    out.close();
  26.  
    }
  27.  
    }

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章