A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. package in.itcast_Test;

  2. import java.io.BufferedInputStream;
  3. import java.io.BufferedOutputStream;
  4. import java.io.File;
  5. import java.io.FileInputStream;
  6. import java.io.FileNotFoundException;
  7. import java.io.FileOutputStream;
  8. import java.io.IOException;

  9. public class FileTest {

  10.         /**
  11.          * 复制文件夹 遍历文件 1.先进行判断是否是文件夹 如果是文件夹的话 进行创建文件夹 2.如果不是文件夹的话 直接复制. 3.在文件夹下进行遍历..
  12.          *
  13.          *
  14.          * @param args
  15.          * @throws IOException
  16.          */
  17.         public static void main(String[] args) throws IOException {
  18.                 File file = new File("F:\\笔记");// 创建源文件的file对象
  19.                 File file1 = new File("f:\\复制文件夹1"); // 目标文件夹
  20.                 file1.mkdir(); // 先创建目标文件夹
  21.                 xx(file, file1);
  22.         }

  23.         public static void xx(File file, File file1) throws FileNotFoundException,
  24.                         IOException {
  25.                 File[] li = file.listFiles();
  26.                 for (File file2 : li) {
  27.                         if (file2.isDirectory()) {
  28.                                 File f = new File(file1, file2.getName());
  29.                                 f.mkdir();
  30.                                 xx(file2, f);
  31.                         } else {
  32.                                 File f2 = new File(file1, file2.getName());
  33.                                 BufferedInputStream input = new BufferedInputStream(new FileInputStream(file2));
  34.                                 BufferedOutputStream output = new BufferedOutputStream(new FileOutputStream(f2));
  35.                                 byte[] by = new byte[1024];
  36.                                 int len = -1;
  37.                                 while ((len = input.read(by)) != -1) {
  38.                                         output.write(by, 0, len);
  39.                                 }
  40.                                 input.close();
  41.                                 output.close();
  42.                         }
  43.                 }
  44.         }

  45. }
复制代码

评分

参与人数 2技术分 +1 黑马币 +6 收起 理由
xiaodaodan + 6 神马都是浮云
lwj123 + 1

查看全部评分

2 个回复

倒序浏览
学习了!
回复 使用道具 举报
学习!感谢您的分享!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马