Java递归删除目录

最近开了一门Java语言课,这是一个小作业,感觉挺有意思的。
利用Java.io包里的File类进行文件操作。
这里用到的函数陈列如下:
public void File(String pathname)//File类构造函数
public String[] list()//获取当前目录下所有文件的文件名
public boolean delete(String pathname)//删除文件或空文件夹

具体代码实现如下
import java.io.*;
public class Hello {
 public static void del(String s) {
  File f=new File(s);
  System.out.println(s+"是否为文件:"+f.isFile());
  if(f.isFile()==false) {//目录
   String[] str=f.list();
   System.out.println("目录 "+s+"的文件数量为: "+str.length);
   if(str.length==0) {
    f.delete();
   }
   else {
    System.out.println(s+"目录下的文件有:");
    for(String x:str) {
     System.out.println(x);
    }
    for(String x:str) {
     del(s+"\\"+x);//注意在此处配置一下路径
    }
    del(s);//此处关键,在删除完目录下文件时删除此空目录
   }
  }
  else {//文件
   System.out.println(f.delete());
  }
  
 }
 public static void main(String[] args) {
  try {
   String s1 = "C:\\eclipse\\workspace\\Hello\\test";//此处为需要删除的目录
         del(s1);
  }
  catch(Exception e){
   System.out.println(e.getMessage());
  }
 }
}


猜你喜欢

转载自blog.csdn.net/qq_36192498/article/details/78997814
今日推荐