用Java编写一个删除空文件夹的程序

如题所述

Java语言,删除一个空文件夹:

import java.io.File;  

class DeleteDir {  
  public static void main(String args[]) {  
    deleteDirectory(new File(args[0]));  
  }  
    
  static public boolean deleteDirectory(File path) {  
    if( path.exists() ) {  //判断是否为空
      File[] files = path.listFiles();  
      for(int i=0; i<files.length; i++) {//如果不为空不删除  
         if(files[i].isDirectory()) {  
           deleteDirectory(files[i]);  
         }  
         else {//执行删除  
           files[i].delete();  
         }  
      }  
    }  
    return( path.delete() );  
  }  
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-10
删除文件夹下的所有文件需要用到java.io.File类的各个方法,并需要使用简单的递归算法。

代码如下:
import java.io.File;
public class Test
{
public static void main(String args[]){
Test t = new Test();
delFolder("c:/bb");
System.out.println("deleted");
}

//删除文件夹
//param folderPath 文件夹完整绝对路径
public static void delFolder(String folderPath) {
try {
delAllFile(folderPath); //删除完里面所有内容
String filePath = folderPath;
filePath = filePath.toString();
java.io.File myFilePath = new java.io.File(filePath);
myFilePath.delete(); //删除空文件夹
} catch (Exception e) {
e.printStackTrace();
}
}

//删除指定文件夹下所有文件
//param path 文件夹完整绝对路径
public static boolean delAllFile(String path) {
boolean flag = false;
File file = new File(path);
if (!file.exists()) {
return flag;
}
if (!file.isDirectory()) {
return flag;
}
String[] tempList = file.list();
File temp = null;
for (int i = 0; i < tempList.length; i++) {
if (path.endsWith(File.separator)) {
temp = new File(path + tempList[i]);
} else {
temp = new File(path + File.separator + tempList[i]);
}
if (temp.isFile()) {
temp.delete();
}
if (temp.isDirectory()) {
delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件
delFolder(path + "/" + tempList[i]);//再删除空文件夹
flag = true;
}
}
return flag;
}
}
第2个回答  2014-09-19
/**
* 删除空文件夹
* @param filePath 文件路劲
*/
private void deleteEmptyDir(String filePath){
File file=new File(filePath);
if(file.isDirectory()){
File[] subFiles=file.listFiles();
if(subFiles!=null&&subFiles.length>0){
for(int i=0;i<subFiles.length;i++){
deleteEmptyDir(subFiles[i].getPath());
}
}else{
if(file.delete()){
System.out.println("删除空文件夹成功!");
}else{
System.out.println("删除空文件夹失败!");
}
}
}

}本回答被网友采纳
第3个回答  2014-09-19
要是问 编写一个太麻烦了 你可以问步骤

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网