最近在由于准备实习,在学android,也会用到Java,所以想实现复制文件夹的功能,当然也参考了别人的代码。这里是我参考的网址:http://blog.csdn.net/etzmico/article/details/7786525/

我发这个文章的主要目的是为了永久性保存我的这个小小成功,用队列的方式又写了一个源文件夹里的所有文件到一个目标目录下的代码,这个目标目录下只有文件,没有文件夹。

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.ObjectInputStream.GetField;

import java.util.LinkedList;

import java.util.Queue;

public class CopyFile2 {

static Queue queue = new LinkedList();

static String copy_From ="D:\\amu1";//源文件

static String copy_TO="E:\\amu2"; //目标文件

/**

* @param args

* @throws IOException

*/

public static void main(String[] args) throws IOException {

// TODO Auto-generated method stub

File [] get_From=(new File(copy_From)).listFiles();//获取源文件中的文件或目录

PanDuan(get_From);//判断是文件还是文件夹,如果是文件直接拷贝,

//如果是文件夹,加到队列当中

while(!queue.isEmpty()){

File getFile=queue.remove();//获取并移除此队列的头,如果此队列为空,则返回 null。

File [] get=(new File(getFile.getAbsolutePath())).listFiles();

//File[] files= new File[]{get};

//files[0]=getFile;

PanDuan(get);

}

}

/*

* 判断是文件还是是文件夹的函数,如果是文件,直接拷贝,如果是文件夹加入到队列中

*/

private static void PanDuan(File[] get_from) throws IOException {

// TODO Auto-generated method stub

for(int i=0;i

if(get_from[i].isFile()){

//调用复制文件的函数

String toFile = copy_TO +"/"+ get_from[i].getName();

copy_File(get_from[i],new File (toFile));

}

else if(get_from[i].isDirectory()){

//Queue queue = new LinkedList();//,如果是文件夹,就加入到队列中

queue.add(get_from[i]);

}

}

}

/

复制文件的函数

*/

private static void copy_File(File from_File, File to_File) throws IOException

{

FileInputStream infile=new FileInputStream(from_File);//新建输入流

BufferedInputStream inbuf=new BufferedInputStream(infile);//对输入流进行缓冲

FileOutputStream outfile=new FileOutputStream(to_File); //新建输出流

BufferedOutputStream outbuf=new BufferedOutputStream(outfile);//对输出流进行缓冲

//缓冲数组

byte [] bt=new byte[2048];

int len;

while ((len=inbuf.read(bt))!=-1) {

outbuf.write(bt, 0, len);

}

outbuf.flush(); //刷新缓冲

infile.close();

inbuf.close();

outfile.close();

outbuf.close();

}

}

java 队列复制_复制一个文件夹里的文件到另一个目录下 (使用队列的方法实现)...相关推荐

  1. BAT批处理让文件夹里的文件单个或多个依次移动到另外一个文件夹

    @echo off @echo off&setlocal enabledelayedexpansion ::设置一次移动多少个文件? set s=1::120为多少秒 for /f " ...

  2. 详解C盘Windows文件夹里重要文件的作用

    详解C盘Windows文件夹里重要文件的作用 在整个Windows操作系统中,最重要的莫过于"Windows"文件夹,对电脑进行任何操作几乎都有关.了解这里对于掌握整个系统的运作有 ...

  3. 计算机中文件怎么移动,文件夹里的文件怎么随意拖动

    Q1:文件夹里的文件无法拖动? Windows 7为了节约自定义视图对未知的记忆功能所消耗的资源,去掉了自定义排序的方式. Q2:电脑文件夹里的文件不能随意拖动是怎么回事呀? 你说的意思是不是想实现任 ...

  4. 计算机文件夹不在桌面显示,为什么我的电脑桌面上的有个文件夹里的文件突然不见了呢...

    为什么我的电脑桌面上的有个文件夹里的文件突然不见了呢以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 为什么我的电脑桌面上 ...

  5. < Android数据存储> 任务二 应用程序数据文件夹里的文件读写

    :zh]Android中提供了两个方法用来打开应用程序的数据文件夹IO流. 1.FileInputStream openFileInput(String name):参数name表示某个文件名,该方法 ...

  6. 5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 ,

    Android中提供了两个方法用来打开应用程序的数据文件夹IO流. 1.FileInputStream openFileInput(String name):参数name表示某个文件名,该方法用于打开 ...

  7. 文件夹里的文件怎么批量打印呢?

    在整理文件资料时,不少人喜欢将一些比较有用的资料整理到一个文件夹下面,但是文件夹中的文件如果想要批量打印的话,需要先将文件夹发送给打印商家,文件夹不支持离线发送,而且很多平台也不支持文件夹的发送. 对 ...

  8. 文件批量改名:如何将在不同文件夹里的文件统一命名并设置编号?

    文件批量改名,文件太多了,可以将在不同文件夹里的文件进行导入,统一重命名成相同的文件名并设置单独编号?有什么什么快速的操作办法吗?今天就有小编来教教大家要如何进行操作. 首先我们要进入文件批量改名高手 ...

  9. Ubuntu桌面不显示Desktop里的文件(Ubuntu桌面显示的是home文件夹里的文件)怎么办

    在整理桌面文件的时候,不知道进行了什么操作,导致Ubuntu重启后,桌面显示的是home文件夹里的文件,整个Desktop文件被拖到了回收站里,于是恢复桌面文件夹,但是恢复后重启原桌面文件也不会显示, ...

  10. 「整理文件轻松有妙招!教你如何按类型将文件夹里的文件进行归类保存」

    文件整理是一个让人望而却步的任务,不经意间文件夹里就会产生大量分类不清的文件,让我们感到十分困扰.而现在,让我们为你介绍一种简便易行的方法,可将文件夹中的文件按类型进行归类保存,轻松整理你的文件夹! ...

最新文章

  1. jsp空间流量是怎么计算的?
  2. csharp: Aspose.Words create table
  3. 怎么将导出的sql文件再次导入到数据库?
  4. 子元素是字典列表转成字典
  5. 继承“HibernateDaoSupport”后,报“The hierarchy of the type AccoutDaoImpl is inconsistent”的解决方案...
  6. KVO-基本使用方法-底层原理探究-自定义KVO-对容器类的监听
  7. Fov手术会不会在手术中新增手术边界
  8. 用 Docker 构建 Serverless 应用
  9. android平台使用java动态生成公私钥,并导出证书文件
  10. matlab中的qr函数
  11. node:爬虫爬取网页图片 1
  12. linux运行欧陆风云,Arm linux启动分析(1)
  13. 解题:POI 2008 Station
  14. 【PL/SQL】处理数据
  15. R语言安装包出现的问题及解决方案
  16. Qt信号与槽实现方式
  17. Zoj 3527 Shinryaku! Kero Musume (DP_章鱼图上的树形DP)
  18. 关于char[]类型的排序 和字符串在使用时可能char*更好用
  19. 放款2500亿仅占1%,度小满要做消费金融拉动内需的新动力?
  20. 网易再次下注10亿元,能在视频领域“砸”出水花吗

热门文章

  1. ImageView的scaleType详解
  2. 就国内某个程序员问答网站的简单的分析
  3. 二鸟在林不如一鸟在手
  4. (Kali)BackTrack-linux安全***测试系统盘
  5. ActiveRecord.JS 与 Google Gears
  6. 更新MySQL复制 自动监控脚本
  7. python canvas画移动物体_如何实现Canvas图像的拖拽、点击等操作
  8. mysql查询各类课程的总学分_基于jsp+mysql的JSP学生选课信息管理系统
  9. Myeclipse/eclipse 安装查看class文件的插件
  10. 存储过程的参数可以使用sql的函数