删除文件夹下的所有文件和子文件夹
背景
这道题是我前几天遇到的一道面试题,遗憾当时没做出来,今天看了传智播客风清扬老师的视频,正好讲到了这道题,所以把它写在这分享给大家。
思路
由于delete方法只能删除文件和空目录,当目录不为空时不能使用delete进行删除。所以自然想到用递归的方法进行删除,即:
判断当前File对象是是否是文件夹,不是则删除之,否则对其下的所有文件和子文件夹进行同样的判断,最后删除这个文件夹(此时这个文件夹肯定是空文件夹)。
代码
import java.io.File;
public class FileDeleteDemo {
public static void main(String[] args) {
// 封装目录
File srcFolder = new File("Folder");