遞迴遍歷磁碟下的某一資料夾中所有檔案,並copy檔案生成檔案和帶資料夾的檔案
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;
}
}
相關文章
- matlab遍歷資料夾下的所有檔案Matlab
- git的gitignore檔案排除資料夾和檔案Git
- nodejs遞迴資料夾獲取所有檔案路徑NodeJS遞迴
- Java遞迴遍歷資料夾及檔案過濾器使用(FileFilter)Java遞迴過濾器Filter
- python 如何刪除資料夾下的所有檔案和子資料夾?Python
- ASP.NET Core 中的檔案提供程式 遍歷資料夾讀取檔案資訊ASP.NET
- NodeJs批量require資料夾中的所有檔案NodeJSUI
- 畸形檔案 資料夾
- 遞迴修改資料夾下面所有檔案裡面的的abc為abcde遞迴
- IDEA中的.iml檔案和.idea資料夾Idea
- Python求取資料夾內的檔案數量、子資料夾內的檔案數量Python
- 讀取資料夾檔案
- 批處理指令碼:遞迴移動資料夾內所有檔案指令碼遞迴
- macOS鎖定檔案和資料夾Mac
- 利用 python 遍歷多級資料夾處理不同檔案Python
- python列出資料夾所有檔案有哪些方法?Python
- C++檔案系統操作5 - 跨平臺列出指定目錄下的所有檔案和資料夾C++
- 在Ubuntu檔案管理器中檢視隱藏檔案和資料夾Ubuntu
- 遍歷目錄下的所有檔案
- 使用libzip壓縮檔案和資料夾
- 獲取一個資料夾下所有指定字尾名(.java)的檔案(包括子資料夾中的內容),並將這些檔案的絕對路徑寫入到一個文字檔案中Java
- Linux中隱藏檔案與資料夾Linux
- python中按照資料夾中檔案的排列順序讀取檔案內容Python
- docker部署nginx並且掛載資料夾和檔案DockerNginx
- c# 上傳壓縮包 解壓,遍歷資料夾和檔案C#
- IDEA隱藏專案的.iml檔案idea資料夾Idea
- 把多個資料夾中的檔案批量放到一個資料夾
- windows cmd拉取linux資料夾下的檔案,並解壓WindowsLinux
- Keil一鍵新增.c檔案和標頭檔案路徑指令碼--可遍歷新增整個資料夾指令碼
- Window資料夾,檔案命名規則
- 修改檔案、資料夾許可權
- Linux加密壓縮檔案/資料夾Linux加密
- linux 檔案、資料夾許可權Linux
- 利用java建立檔案或者資料夾Java
- Android 播放raw資料夾下音訊檔案Android音訊
- Linux迴圈遍歷所有檔案,刪除指定字尾名檔案Linux
- Qt 選擇資料夾、建立資料夾以及建立檔案QT
- .gitignore 在已忽略資料夾中不忽略指定檔案、資料夾...Git
- R語言遍歷資料夾求取其中所有柵格檔案的平均值R語言