浏览 1485 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-16
最后修改:2009-08-16
import java.io.File; /** * <p>递归删除目录和文件的程序 </p> * */ public class DelFileUtils { public static void main(String[] args) { //则试OK String rootDir = "E:\\delDir"; String delDirName = ".txt"; DelFileUtils del = new DelFileUtils(); System.out.println("-------------del ---status----"); del.FindDirectory(rootDir,delDirName); System.out.println("-------------del ---end----"); } /** * 删除目录下指定类型文件或目录 * @param root 是根目录的绝对路径 * @param delName 要删的类型 */ public static void FindDirectory(String root,String delName){ //root是根目录的绝对路径 File directory = new File(root); File[] files = directory.listFiles(); //根目录为空 if(files.length ==0){ System.out.println(root+"根目录为空!"); return; } else{ for(int i=0;i<files.length;i++){ if(files[i].isDirectory()){ System.out.println("--------name:"+files[i].getName()); //根目录的子文件夹就是要删除的文件夹 if(files[i].getName().equals(delName)){ System.out.println(files[i].getAbsolutePath()); DelDirectory(files[i]); } //根目录的子文件夹不是要删除的文件夹 else{ FindDirectory(files[i].getAbsolutePath(),delName); } } } } } /** * 删除目录以及目录下的所有文件 * @param directory 文件名 */ public static void DelDirectory(File directory){ File[] children = directory.listFiles(); System.out.println("---------------method del---------------------"); if(children.length==0){ directory.delete(); System.out.println("\t删除目录"+directory.getName()); } else{ for(int i=0;i<children.length;i++){ if(children[i].isFile()){ children[i].delete(); System.out.println("\t删除文件"+children[i].getName()); } else if(children[i].isDirectory()){ DelDirectory(children[i]); System.out.println("\t"+children[i].getAbsolutePath()); } } directory.delete(); System.out.println("\t删除目录"+directory.getName()); } } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |