欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

根据文件或者文件夹名批量删除文件或文件夹

程序员文章站 2022-05-31 16:34:14
...

主要用来删除:同样的文件或者文件夹在多个文件夹里存在时 例如 .svn、eclipse信息等

package test;


import java.io.File;


public class DelFile {

    /**
     * 删除文件夹中所有的.settings文件夹
     */
    public static void main(String[] args) throws Exception{
        String parentPath = "E:\\支付\\pay-common";
        File file =new File(parentPath);
        deleteFile(file,".project");//这里可以是文件名也可以是文件夹名

    }
    
    private static void deleteFile(File file,String deleteFileName){
        
        if(file.isDirectory()){
            
            if(deleteFileName.equals(file.getName())){
                deleteSvnFile(file);
            }else{
                File[] fileArray =file.listFiles();
                for(File fileItem: fileArray){
                    deleteFile(fileItem,deleteFileName);
                }
            }
        }else{
        	 if(deleteFileName.equals(file.getName())){
        		 file.delete();
        		 System.out.println("删除-->"+file.getAbsolutePath());
             }
        }
    }
    
    /**
     * 
     * @Title: 			deleteSvnFile 
     * @Description: 	TODO
     * @param 			@param file    
     * @return 			void
     * @throws
     */
    private static void deleteSvnFile(File file){
        File[] fileArray =file.listFiles();
        for(File fileItem: fileArray){
            if(fileItem.isFile()){
                System.out.println("删除-->"+fileItem.getAbsolutePath());
                fileItem.delete();
            }else{
                deleteSvnFile(fileItem);
            }
        }
        System.out.println("删除-->"+file.getAbsolutePath());
        file.delete();
    }
    
    

}