java删除文件夹下相同后缀文件和删除文件夹

package  deletefiles;

import  java.io.File;

/**
 * delete files class
 * 
@author  zs
 
*/
public   class  DeleteClass {

    
//  Examples : the path of delete file
     public   static   final  String delpath  =   " F:/xxx.class " ;

    
//  Examples : the end name of delete file
     public   static   final  String delEndName  =   " class " ;

    
/**
     * function
     * 
@param  delpath
     *            path of file
     * 
@param  delEndName
     *            end name of file
     
*/
    
public  DeleteClass(String delpath, String delEndName) {
        deleteEndFile(delpath, delEndName);
    }

    
/**
     * delete the end name file
     * 
@param  delpath
     *            path of file
     * 
@param  delEndName
     *            end name of file
     * 
@return  boolean the result
     
*/
    
public   boolean  deleteEndFile(String delPath, String delEndName) {

        
//  param is null
         if  (delPath  ==   null   ||  delEndName  ==   null ) {
            System.out.println(
" path or name error " );
            
return   false ;
        }
        
try  {
            
//  create file
            File file  =   new  File(delPath);
            
if  (file  !=   null ) {
                
if  (file.isDirectory()) {
                    
//  file list
                    String[] fileList  =  file.list();
                    File delFile 
=   null ;

                    
//  digui
                     for  ( int  i  =   0 ; i  <  fileList.length; i ++ ) {
                        
//  create new file
                        delFile  =   new  File(delPath  +   " / "   +  fileList[i]);
                        
if  (delFile  !=   null ) {
                            deleteEndFile(delFile.toString(), delEndName);
                        } 
else  {
                            System.out.println(
" file path is null " );
                        }
                    }
                } 
else   if  (file.isFile()) {

                    
//  check the end name
                     if  (file.toString().contains( " . " )
                            
&&  file.toString().substring(
                                    (file.toString().lastIndexOf(
" . " +   1 ))
                                    .equals(delEndName)) {
                        
//  file delete
                        file.delete();
                    }
                } 
else  {
                    System.out.println(
" file is error " );
                }
            } 
else  {
                System.out.println(
" file path is null " );
            }
        } 
catch  (Exception ex) {
            ex.printStackTrace();
            
return   false ;
        }
        
return   true ;
    }

    
/**
     * delete all files
     * 
@param  delpath
     *            delpath path of file
     * 
@return  boolean the result
     
*/
    
public   boolean  deleteFile(String delpath) {

        
try  {
            
//  create file
            File file  =   new  File(delpath);

            
if  ( ! file.isDirectory()) {
                file.delete();
            } 
else   if  (file.isDirectory()) {

                String[] filelist 
=  file.list();
                
for  ( int  i  =   0 ; i  <  filelist.length; i ++ ) {

                    
// create new file
                    File delfile  =   new  File(delpath  +   " / "   +  filelist[i]);
                    
if  ( ! delfile.isDirectory()) {
                        delfile.delete();
                    } 
else   if  (delfile.isDirectory()) {
                        
                        
// digui
                        deleteFile(delpath  +   " / "   +  filelist[i]);
                    }
                }
                file.delete();
            }
        } 
catch  (Exception ex) {
            ex.printStackTrace();
            
return   false ;
        }
        
return   true ;
    }
}
 摘要:自己在编译java工程以后总生成一堆class文件,以后拷贝的时候比较麻烦,写了个方法删除它们,顺便找了个删除所有文件的方法。  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值