天天看点

传入一个目录或者文件夹如何列出或者删除所有子目录和文件?



import java.io.File;

public class Work {

 public static void main(String[] args) {

  // TODO 自动生成的方法存根 

  File dir = new File("f:\\p3"); //创建一个新对象,将目录文件传进来。

  mygetFile(dir);  //传入File类型参数。   // 数据类型为File

 }

 private static void mygetFile(File dir) {

  // TODO 自动生成的方法存根

  File[] File = dir.listFiles(); //返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。

  for (File file : File) {   //1.数据类型是File  2.自定义参数名file  3.抽象数据组名File

   if (file.isDirectory()) {   // 判断file是否为一个目录。

    mygetFile(file);   //调用自身方法(递归)继续打开目录

   }else {

    System.out.println(file);    /打开所有分级目录后,打印所有的文件

    //System.out.println(file.delete());   

   }                    //如果需要删除文件,只需要将两个打印后面增加或者更改调用delete方法。

  }      // 当文件夹里面文件没被删除时,文件夹是删除不掉的。

  System.out.println(dir);  //打印所有的文件夹

  //System.out.println(dir.delete());    

 }

}