将一个文件夹中我们需要的文件拷贝到另一个文件夹中的代码实现

摘要:
=Null){49//不为空,判断它是否为文件50if{51//获取文件名,判断文件的结尾52if{53//将符合条件的文件放入数组54list.add;55}56//传入的文件是文件夹57}else{58//获取文件夹中的所有文件并将其放入数组59File[]files=f.listFiles();60/判断它是否是空文件夹61if(files.length!=0){62//遍历数组63进行{64//递归,继续执行方法65getFiles;66}6768}69}70}7172}73}
 1 package cn.itsource.homework;
 2 
 3 import java.io.File;
 4 import java.io.FileInputStream;
 5 import java.io.FileOutputStream;
 6 import java.util.ArrayList;
 7 /**
 8  * 需求:编写程序将D盘XML文件夹中所有以“avi”结尾的文件考入到E盘(通过代码建文件夹保存文件)
 9  * 
10  * 
11  * */
12 public class CopyHM3 {
13 
14     public static void main(String[] args) throws Exception {
15         //选择要复制的文件
16          File file = new File("d:/XML");
17          //调用下面的方法,得到我们所想要的所有文件
18          getFiles(file);
19          //新建一个文件放我们要复制的类容
20          File file2 = new File("e:/java学习");
21          file2.mkdirs();
22          //遍历装有文件的数组
23          for (File f : list) {
24              //得到每个文件的名字
25              String name = f.getName();
26              //在新文件夹中创建相同名字的文件
27              File file3 = new File(file2, name);
28               file3.createNewFile();
29               //字节输入流 从磁盘到内存
30               FileInputStream inputStream = new FileInputStream(f);
31               //字节输出流 从内存到磁盘
32               FileOutputStream outputStream = new FileOutputStream(file3);
33               byte[] b =new byte[1024];
34               int num;
35               while((num=inputStream.read(b))!=-1){
36                   outputStream.write(b);
37               }
38               //关流,先开后关
39               outputStream.close();
40               inputStream.close();    
41         }
42          
43     }
44     //新建一个数组 将文件放入
45      static  ArrayList<File> list =new ArrayList<File>();
46     public static void getFiles(File f){
47         //判断文件夹是否为空
48         if(f!=null){
49             //不为空判断是否是文件
50              if(f.isFile()){
51                  //获得文件名字,判断文件结尾
52                  if( f.getName().endsWith(".avi")){
53                      //将符合条件的文件放如数组中
54                      list.add(f); 
55                  }    
56             //传入的是文件夹的情况
57              }else {
58                  //获取文件夹中所有文件,放入数组中
59                  File[] files = f.listFiles();
60                  //判断是否为空文件夹
61                  if(files.length!=0){
62                      //遍历数组
63                      for (File file : files) {
64                          //递归,继续执行方法
65                         getFiles(file);
66                     }
67                      
68                  }
69             }
70         }
71         
72     }
73 }

免责声明:文章转载自《将一个文件夹中我们需要的文件拷贝到另一个文件夹中的代码实现》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Delphi 目前使用delay函数功能js中arguments的用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

中国石油大学(华东)计算机复试C语言参考题库

目录 复试c语言 【研究创新型】8.1 谁能出线 【设计型】8.2 统计素数的个数 【设计型】8.3 数组逆序输出 【设计型】8.4 在屏幕上显示杨辉三角形 【设计型】8.5 求最大值 【设计型】8.6 二维数组 【设计型】8.11 存储并输出一个矩阵 【设计型】8.7 给数组中的元素按顺序编号 【设计型】8.8 求各位数字组成的最大数 【设计型】8...

标准C程序设计七---32

Linux应用 编程深入 语言编程标准C程序设计七---经典C11程序设计以下内容为阅读:《标准C程序设计》(第7版) 作者:E. Balagurusamy(印), 李周芳译 清华大学出版社 2017.7《21天学通C语言》(第7版) 作者:Bradley Jones Peter Aitken Dean Miller(美), 姜佑译 人民邮电出版社 201...

JSON的数据格式

1. 什么是 JSON       JSON概念很简单,JSON 是一种轻量级的数据格式,他基于 javascript 语法的子集,即数组和对象表示。由于使用的是 javascript 语法,因此JSON 定义可以包含在javascript 文件中,对其的访问无需通过基于 XML 的语言来额外解析。不过在使用 JSON 之前,很重要的一点是理解 javas...

[POJ1195] Mobile phones(二维树状数组)

题目链接:http://poj.org/problem?id=1195 题意:四种操作: 0:初始化一个S*S的零矩阵 1:点(x,y)是值+A 2:查询一个子矩阵里所有数的和 3:退出 线段树由于不能在两棵树之间传递标记,所以这种求和的操作非常难处理。 改学了一下而为树状数组,发现可是比二维线段树简单多了。 记得之前曾经看过zkw线段树的ppt讲稿,好像...

过滤器 ||(filter)

http://www.cnblogs.com/lvdabao/p/3475426.html 原文地址 filter的两种使用方法 1. 在模板中使用filter 我们可以直接在{{}}中使用filter,跟在表达式后面用 | 分割,语法如下: {{ expression | filter }} 也可以多个filter连用,上一个filter的输出将作为下...

深入理解HashMap第一篇

HashMap 1.描述 HashMap是常用的Java集合之一,是基于哈希表的Map接口的实现。设计目标是尽量实现哈希表O(1)级别的增删改查效果,与HashTable主要区别为不支持同步和允许null作为key和value。 各项默认值 初始容量(capacity):16(1<<4),即2^4。 最大容量:(1<<30),即...