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

用Java编写一个删除空文件夹的程序,第1张

代码如下,使用递归进行删除

import java.io.File

public class Main {

    public static void main(String[] args) {

        //待删除文件夹所在目录,例如要删除桌面上所有空文件夹,则该变量应该为桌面路径全部删除

        String deletePath = "G:/test/"

        delete(new File(deletePath))

    }

    public static void delete(File file) {

        if (file.isDirectory()) {

            File[] childs = file.listFiles()

            if (childs.length == 0) {

                File parent = file.getParentFile()

                file.delete()

                if (parent.listFiles().length == 0) {

                    parent.delete()

                }

            } else {

                for (File child : childs) {

                    delete(child)

                }

            }

        }

    }

}

import java.io.File

public class Test {

 /**

  * @param args

  */

 public static void main(String[] args) {

  String filePath = "E:\\test\\test"

  File file = new File(filePath)

  //调用静态方法删除目录或文件

  Test.removeDir(file)

 }

 

 public static void removeDir(File file){

  if(!file.exists()){//目录不存在

   return

  }else{

   if(file.isFile()){//地址指向一个文件时,就删除这个文件

    file.delete()

   }else{//当地址指向一个文件夹或目录

    File[] fileArray = file.listFiles()

    for (int i = 0 i < fileArray.length i++) {

     //递归删除目录下的文件

     removeDir(fileArray[i])

    }

    //删除目录

    file.delete()

   }

  }

 }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/6063227.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-13
下一篇 2023-03-13

发表评论

登录后才能评论

评论列表(0条)

保存