原标题:Java字节流实现文件夹的拷贝

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

/**

· java字节流实现文件夹的拷贝

· 拷贝文件夹,其中文件夹中又有多个文件

· 1.先遍历这个文件夹,判断是否是目录

· 2.创建文件夹

· 3.拷贝文件到新的地方

· */

public class FileDirectoryCopyDemo {

//遍历文件夹

public static void copy(File srcDir,File destDir){

//遍历srcDir文件夹

File[] list=srcDir.listFiles();

for(File f:list){

//先判断是否是目录,在目录文件夹里创建一个子目录

if(f.isDirectory()){

String name=f.getName(); //获取目录的名字

//调用方法去目录文件夹里创建子目录

File newDestDir=makeDir(destDir,name);

//递归

copy(f,newDestDir);

}else{

//如果不是目录,就拷贝文件

File dest=new File(destDir,f.getName());

fileCopy(f,dest);

}

}

}

public static File makeDir(File parent,String name){

File f=new File(parent,name);

f.mkdir();//创建文件夹

return f;

}

//文件拷贝函数

public static void fileCopy(File src,File dest){

InputStream in=null; //输入流,负责读文件

OutputStream out=null; //输出流,负责写入文件

try{

in=new FileInputStream(src);

out=new FileOutputStream(dest);

long start=System.currentTimeMillis();

//定义缓冲区

byte[] buffer=new byte[1024];

int len=-1;

· while((len=in.read(buffer))!=-1)//说明还没有读到文件的结尾

· {

· out.write(buffer,0,len); //输出流写入一个字节

· }

· long end=System.currentTimeMillis();

· //文件夹下有几个文件就耗时几次

· System.out.println(拷贝文件耗时:+(end-start)+毫秒);

· }catch(Exception e){

· e.printStackTrace();

· }finally{

· try {

· in.close();

· out.close();

· } catch (IOException e) {

· // TODO Auto-generated catch block

· e.printStackTrace();

· }

}

}

public static void main(String[] args) {

// TODO Auto-generated method stub

//拷贝之前的原文件 haha是个文件夹

File src=new File(D:+File.separator+haha);

//拷贝之后的文件

File dest=new File(F:+File.separator+haha);

if(!dest.exists()){

dest.mkdir(); //创建文件夹

}

copy(src,dest);

}

责任编辑:

byte拷贝java_Java字节流实现文件夹的拷贝相关推荐

  1. python编写代码实现文件的拷贝功能_python从一个文件夹自动拷贝文件到目标文件夹的代码...

    这里为大家提供一个python操作文件的例子,实现功能:从一个文件夹自动拷贝文件到目标文件夹. 供python爱好者学习参考. 代码如下: # Filename: CopyPictures.py im ...

  2. python复制文件到指定文件夹_python 拷贝文件夹下所有的文件到指定文件夹(不包括目录)...

    1.随便简单些写了一下.直接粘结代码,只是简单的实现一下,还很多需要完善和扩展的地方,比如忽略掉后缀文件,删除文件 如果排除的某些的话可以用: sourceF.find('.后缀')>0 2.注 ...

  3. 【MacOS】图书(books)APP如何找到PDF文件夹并拷贝出来

    背景 本文介绍如何查找macos系统中的"图书(books)"APP中的文件位置.方便大家拷贝文件. 方法一 将pdf默认打开方式改为wps: 在books APP中打开任意一本书 ...

  4. Oppo手机往电脑里拷贝照片时DCIM文件夹里照片显示不全的解决方案

    前言 近日被一部手机困扰了很久,起因是想把里边的照片拷贝到电脑里,看似平常而简单的操作却被狠坑了一把. 从手机里查看本来有大几百张照片,连接电脑后却只显示近期的几张照片和视频. 从手机里的" ...

  5. 创建文件夹 java_java怎么建文件夹

    Java文件类以抽象的方式代表文件名和目录路径名.该类主要用于文件和目录的创建.文件的查找和文件的删除等.File对象代表磁盘中实际存在的文件和目录. 下面我们来看一下java中创建文件夹的方法: 示 ...

  6. linux实现文件夹并行拷贝,linux – 并行特定文件夹中的scp文件

    我想scp文件从machineA到我的机器B,这就是我这样做的方式.我将一堆文件从machineA的主文件夹一个一个地复制到machineB的主文件夹和machineA的二级文件夹到machineB的 ...

  7. linux拷贝文件夹到另一台机器,linux肿么一个文件拷贝到另一个文件夹

    chmod 是这样用的... chmod 700 B 就行了 4=write 2=read 1=execute 瞎说... 权限是安位计算的 700代表3类权限 第一个数字是用户权限 第2个数字是组权 ...

  8. Java io流---拷贝文件夹下的所有文件和目录

    Java io流-拷贝文件夹下的所有文件和目录 代码: package demo01;import java.io.*; import java.util.TreeMap;public class C ...

  9. java拷贝文件夹和删除文件夹

    1.文件夹的拷贝 public void copy(File src, File dest) throws IOException { if (dest.isFile()) { throw new R ...

  10. 文件夹拷贝,判断,生成当前用户权限的文件夹

    使用到的API: CreateDirectory:创建目录 FindFirstFile,FindNextFile 查找文件 RemoveDirectory:删除空目录 GetFileAttribute ...

最新文章

  1. H5嵌入原生开发小结----兼容安卓与ios的填坑之路
  2. 专家:香港拥有人民币资产配置独特优势
  3. asp.net core 自定义异常处理中间件
  4. HDU 2089 不要62(数位DP)
  5. 学习ASP.NET Core, 怎能不了解请求处理管道[3]: 自定义一个服务器感受一下管道是如何监听、接收和响应请求的...
  6. Linux基础命令及其常识
  7. 备份 虚拟机安装centos8 并配置部分开发环境(不用docker)
  8. matlab神经网络结果怎么看,matlab神经网络实验报告
  9. HTML5前端开发实战04-儿童摄影
  10. 怎么隐藏计算机磁盘分区,如何隐藏硬盘分区 隐藏磁盘分区
  11. fingerprint mismatch错误原因分析
  12. 01-相机姿势,你的姿势对不对呢?「原题:夺命摄影十八式」
  13. JavaScript数组反转教程
  14. UnsatisfiedDependencyException报错的原因
  15. 百度小程序如何引流?给用户带来了更便捷、更人性化的体验
  16. 寒衣节的由来和习俗,你知道吗?
  17. 可视化篇:Echarts2.0引入百度地图
  18. win10系统下jdk环境变量配置
  19. LintCode 岛屿的个数
  20. 树莓派的日常——模拟蓝牙游戏手柄支持NFC

热门文章

  1. html位置水平居中,html元素水平居中的几种方法
  2. python爬取美女_Python制作爬虫抓取美女图
  3. pb9.0.3 8836补丁包_英语单数/复数名词傻傻分不清楚?3种不规则形态一次性搞懂!...
  4. oracle10g sql on条件,ORACLE 10G使用SQLNET.ORA限制IP登陆
  5. 词频统计软件_单词词频统计小软件
  6. jq控制div是否展示_jQuery判断一个元素是否可见的方法
  7. l3asnumanode 设置_numa设置与mysql
  8. 【问题3】生产环境中的 redis 是怎么部署的?
  9. STM32F103ZET6 PWM输出
  10. 【算法总结】数学问题-高精度整数