File 删除给定的文件或目录

package seday03;

import java.io.File;

/**
* 创建一个多级目录
* @author xingsir
*/
public class MkDirsDemo {

public static void main(String[] args) {
/*
* 在当前目录中创建:A/B/C/D/E/F
*/
File dir = new File("A/B/C/D/E/F");
if(!dir.exists()) {
//创建当前目录是会将不存在的父目录一并建立
dir.mkdirs();
System.out.println("目录已创建!");
}else {
System.out.println("目录已存在!");
}
}

}

//===========================================================

package seday03;

import java.io.File;


/**
* @author xingsir
* 删除给定的文件或目录
*/
public class Test {

public static void main(String[] args) {
File dir=new File("./A");
delete(dir);
}


public static void delete(File file) {
if(file.isDirectory()) {
File [] subs=file.listFiles();
for (int i=0;i<subs.length;i++) {


File sub = subs[i];
/*
* 一个方法内部调用自己方法的现象称为 递归调用
* 递归在实际开发中能避免使用尽量避免, 因为资源开销大,运行速度慢。
* 若使用递归,应当注意满足以下两点:
* 1:递归调用必须被一个分支语句控制, 如果方法内部必然执行递归则是死循环
* 2:递归层数尽量少(因为开销大)
*/
delete(sub);
}
}
file.delete();
}
}

原文地址:https://www.cnblogs.com/xingsir/p/11990595.html