复制单级文件夹

思路

package package5;

import java.io.*;

//复制单击文件夹,该文件里有多种类型文件
public class CopyFile {
   public static void main(String[] args) throws IOException {
       //创建数据源目录File对象
       File srcFolder =new File("E:\\itcast");
       //获取数据源目录File对象的名称
       String srcFolderName = srcFolder.getName();
       //创建目的地目录File对象,路径由(模块名+第2步获取的名称)组成
       File desFolder =new File("day04",srcFolderName);
       //判断第3步创建的File是否存在,如果不存在,就创建
       if(!desFolder.exists()){
          desFolder.mkdir();
       }
       //获取数据源目录下所有文件的File数组
       File[] listFiles = srcFolder.listFiles();
       //遍历File数组,得到每一个File对象,该File对象,其实就是数据源文件
       for(File srcFile :listFiles){
           //获取数据源文件File对象的名称
           String srcFileName = srcFile.getName();
           //创建目的地文件File对象,路径由(目的地目录+第7步获取的名称)组成
           File destFile =new File(desFolder,srcFileName);
           //复制文件
           copyFile(srcFile,destFile);
       }
   }
   private static void copyFile(File srcFile,File destFile) throws IOException {
       BufferedInputStream bis =new BufferedInputStream(new FileInputStream(srcFile));
       BufferedOutputStream bos =new BufferedOutputStream(new FileOutputStream(destFile));

       byte[] bys =new byte[1024];
       int len;
       while ((len=bis.read(bys))!=-1){
           bos.write(bys,0,len);
       }
       bos.close();
       bis.close();
   }
}
posted @   knlf  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示