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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. package com.kxg_2;

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

  8. /*
  9. * 需求:复制单级文件夹D:\T到D:\Test
  10. */
  11. public class Copy {
  12.         public static void main(String[] args) throws IOException {
  13.                 // 首先把数据源和数据目的地封装起来
  14.                 // 封装数据源
  15.                 File srcFolder = new File("D:\\T");
  16.                 // 封装目的地
  17.                 File destFolder = new File("D:\\kxg");

  18.                 // 如果数据目的地这个文件夹不存在就创建
  19.                 if (!destFolder.exists()) {
  20.                         destFolder.mkdir();
  21.                 }

  22.                 // 得到数据源的File对象数组
  23.                 File[] fileArray = srcFolder.listFiles();

  24.                 // 遍历得到每个File对象
  25.                 for (File srcFile : fileArray) {
  26.                         // 获取每个对象的文件夹名称
  27.                         String srcName = srcFile.getName();

  28.                         // 在目的地文件夹创建相同名字的文件抽象表示形式
  29.                         File destFile = new File(destFolder, srcName);

  30.                         // 将数据源的文件内容复制到目的地的文件中
  31.                         copyFile(srcFile, destFile);
  32.                 }
  33.         }

  34.         private static void copyFile(File srcFile, File destFile)
  35.                         throws IOException {
  36.                 // 封装数据源
  37.                 BufferedInputStream fis = new BufferedInputStream(new FileInputStream(
  38.                                 srcFile));

  39.                 // 封装目的地
  40.                 BufferedOutputStream bos = new BufferedOutputStream(
  41.                                 new FileOutputStream(destFile));

  42.                 byte[] bys = new byte[1024];
  43.                 int len = 0;
  44.                 while ((len = fis.read(bys)) != -1) {
  45.                         bos.write(bys, 0, len);
  46.                 }

  47.                 // 释放资源
  48.                 fis.close();
  49.                 bos.close();
  50.         }
  51. }
复制代码


1 个回复

倒序浏览
说的好  给个赞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马