package com.hudong.test;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileUtils; public class ErgodicFile { public static void main(String[] args) throws IOException {
File file = new File("E:\\ershouok1");
// ergodicFile(file, 0);
ergodicFileFolder(file); } /**
* 生成文件
*
* @param file
* @param temp
* @return
* @throws IOException
*/
public static List<File> ergodicFile(File file, int temp) throws IOException {
List<File> list = new ArrayList<File>();
File[] fileList = file.listFiles(); for (int i = 0; i < fileList.length; i++) { File docFile = new File("E:\\39yiyuan\\doc\\" + temp + ".xml");
File summaryFile = new File("E:\\39yiyuan\\summary\\" + temp + ".xml");
File contentFile = new File("E:\\39yiyuan\\content\\" + temp + ".xml"); if (fileList[i].isFile()) { // 判断是文件
if ("doc.xml".equals(fileList[i].getName())) {
FileUtils.copyFile(fileList[i], docFile); //copy文件
} else if ("summary.xml".equals(fileList[i].getName())) {
FileUtils.copyFile(fileList[i], summaryFile);
} else if ("content.xml".equals(fileList[i].getName())) {
FileUtils.copyFile(fileList[i], contentFile);
}
} else if (fileList[i].isDirectory()) { // 判断是目录
ergodicFile(fileList[i], i); // 递归
}
}
return list;
} /**
* 生成带文件夹的文件
*
* @param file
* @param temp
* @return
* @throws IOException
*/
public static List<File> ergodicFileFolder(File file) throws IOException {
List<File> list = new ArrayList<File>();
File[] fileList = file.listFiles(); for (int i = 0; i < fileList.length; i++) { //遍历文件 if (fileList[i].isFile()) { // 判断是文件
if ("doc.xml".equals(fileList[i].getName())) {
File docFile = new File("E:/yiyuan/doc/" + System.currentTimeMillis());
docFile.mkdir();
FileUtils.copyFile(fileList[i], new File(docFile.getAbsolutePath() + "/doc.xml"));
} else if ("summary.xml".equals(fileList[i].getName())) {
File contentFile = new File("E:/yiyuan/summary/" + System.currentTimeMillis());
contentFile.mkdir();
FileUtils.copyFile(fileList[i], new File(contentFile.getAbsolutePath() + "/summary.xml"));
} else if ("content.xml".equals(fileList[i].getName())) {
File summaryFile = new File("E:/yiyuan/content/" + System.currentTimeMillis());
summaryFile.mkdir();
FileUtils.copyFile(fileList[i], new File(summaryFile.getAbsolutePath() + "/content.xml"));
}
} else if (fileList[i].isDirectory()) { // 判断是目录
ergodicFileFolder(fileList[i]); // 递归
}
}
return list;
}
}

递归遍历磁盘下的某一文件夹中所有文件,并copy文件生成文件和带文件夹的文件的更多相关文章

  1. (实用篇)PHP不用递归遍历目录下所有文件的代码

    <?php /** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ fu ...

  2. Python递归遍历目录下所有文件

    #自定义函数: import ospath="D:\\Temp_del\\a"def gci (path): """this is a stateme ...

  3. VC/MFC 下 递归遍历目录下的所有子目录及文件

    在MFC下要实现文件夹的递归遍历,可用CFileFind类,依次读取文件夹下的子文件夹和文件,并判断通过判断是文件夹还是文件来决定递归遍历.递归遍历代码如下: /******************* ...

  4. IO流-递归遍历目录下指定后缀名结尾的文件名称

    /* *自定义遍历目录下指定后缀名结尾文件的名称的方法: * * param file:指定目录 name:指定后缀名 */ 1 public static void FileName(File fi ...

  5. linux中,通过crontab -e编辑生成的定时任务,写在哪个文件中

    环境描述: 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 内核版本:2.6.32-504.el6.x86_64 需求描述: 一 ...

  6. 如何在IJ中使用Jaxb2通过xml定义生成对应的Java Entity类的文件

    #0. 准备要转换的xml文件,在Project视界中,右击这个xml文件,在弹出的菜单上选择“Generate XSD schema from XML File...”, 按默认设置生成xsd文件. ...

  7. Java 文件夹递归遍历

    import java.io.File; public class Demo1 { public static void main(String[] args) { File dir=new File ...

  8. 数据结构二叉树的递归与非递归遍历之java,javascript,php实现可编译(1)java

    前一段时间,学习数据结构的各种算法,概念不难理解,只是被C++的指针给弄的犯糊涂,于是用java,web,javascript,分别去实现数据结构的各种算法. 二叉树的遍历,本分享只是以二叉树中的先序 ...

  9. python找递归目录中文件,并移动到一个单独文件夹中,同时记录原始文件路径信息

    运营那边有个需求. 下载了一批视频文件,由于当时下载的时候陆陆续续创建了很多文件夹,并且,每个文件夹下面还有子文件夹以及视频文件,子文件夹下面有视频文件或者文件夹 现在因为需要转码,转码软件只能对单个 ...

随机推荐

  1. 前端快速构建神器vue-cli,windows下安装并且构建前端项目

    1.nodejs官网http://nodejs.cn/下载安装包,傻瓜式安装即可 2.dos命令查询node的版本 node -v 查询版本号 npm -v 查询npm包管理版本 3.安装国内镜像 n ...

  2. Python3.7离线安装Requests无法正常使用问题

    继续搬砖...... 春节前,克服了网络受限的情况下离线安装Python库文件问题,传送门如下: https://www.cnblogs.com/mrgavin/p/12202214.html htt ...

  3. Java的各类型数据在内存中分配情况详解

    1.      有这样一种说法,如今争锋于IT战场的两大势力,MS一族偏重于底层实现,Java一族偏重于系统架构.说法根据无从考证,但从两大势力各自的社区力量和图书市场已有佳作不难看出,此说法不虚,但 ...

  4. setTimeout()执行时序

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  5. TPO3-1 Architecture

    Even development in architecture has been the result of major technological changes. Materials and m ...

  6. [APIO2016]Gap(交互)

    第一个subtask应该还是很送分的,就是每次询问两端值的大小,(N+1)/2次即可. 考虑第二个subtask,首先还是先把最小值和最大值询问出来,然后发现不需要询问每一个数,直接将[l+1,r-1 ...

  7. Office、VBA开发方案选择指南

    最近很多朋友向我提出Office的开发方式方面的疑惑,主要是针对特定的系统和Office版本不知道选择哪一种编程语言.创建哪一种类型的项目. 事实确实如此,如果搞不清楚语言的特性和项目类型的特点,很可 ...

  8. 迅为iTOP-3399开发板Ubuntu基本设置

    基于迅为iTOP3399开发板虚拟机需要根据用户的实际情况,进行网络设置以及其他一些基本的设置.VMware10.0.1 和 Vmware8.0.3 联网和基本设置类似.下面先详细讲解一下,虚拟机的一 ...

  9. elasticserch-hadoop spak 网络配置异常排查

    elasticserch hadoop 在本地测试写入 elasticsearch:9200时成功 线上环境却报错如下 org.elasticsearch.hadoop.EsHadoopIllegal ...

  10. Contiguous Repainting

    题目描述 There are N squares aligned in a row. The i-th square from the left contains an integer ai. Ini ...