12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- package com.caesolver.sftp;
- import java.io.File;
- import java.io.IOException;
- import java.nio.file.Path;
- import java.util.ArrayList;
- import java.util.List;
- public class FileUtil {
- /**
- 递归删除目录下的所有文件及子目录下所有文件
- * @param filepath 将要删除的文件目录
- */
- public static void deleteDir(String filepath) {
- File f = new File(filepath);//定义文件路径
- if(f.exists() && f.isDirectory()){//目录
- if(f.listFiles().length==0){//若目录下没有文件则直接删除
- f.delete();
- }else{//若有则把文件放进数组,并判断是否有下级目录
- File delFile[]=f.listFiles();
- int i =f.listFiles().length;
- for(int j=0;j<i;j++){
- if(delFile[j].isDirectory()){
- deleteDir(delFile[j].getAbsolutePath());//递归调用del方法并取得子目录路径
- }
- delFile[j].delete();//删除文件
- }
- }
- }else if(f.exists()){
- f.delete();
- }
- }
- /**
- * 获取文件夹下的所有文件列表
- * @param path
- * @throws IOException
- */
- public static List<File> ListDataOutFiles(String path,String projectType) {
- List<File> files =new ArrayList<File>();
- sonFiles(path, files,projectType);
- return files;
- }
- private static void sonFiles(String path, List<File> files,String projectType) {
- File rootFile = new File(path);
- File[] listFiles=rootFile.listFiles();
- if(listFiles!=null&&listFiles.length>0) {
- for (File file : listFiles) {
- if(file.isDirectory()) {
- sonFiles(file.getPath(),files,projectType);
- }else {
- switch (projectType) {
- case "hcfd":
- if(file.getParent().indexOf("data_out")>0) {
- files.add(file);
- };
- break;
- case "fem":
- if(file.getParent().indexOf("data_out")>0) {
- files.add(file);
- }
- break;
- case "cfd":
- if(file.getName().endsWith(".out")) {
- files.add(file);
- }
- break;
- case "mpm":
- if(file.getParent().indexOf("dataout")>0) {
- files.add(file);
- }
- break;
- case "bladesign":
- if(
- file.getName().endsWith(".K")||
- file.getName().endsWith(".v0")||
- file.getName().endsWith(".opt")||
- file.getName().endsWith(".ech")||
- file.getName().endsWith(".v1S")||
- file.getName().endsWith(".out")||
- file.getParent().indexOf("OPT")>0
- ) {
- files.add(file);
- }
- break;
- default:
- break;
- }
- }
- }
- }
- }
-
- }
|