开始觉得简单,后来发现还是要一点技巧的:
private boolean deleteEmptyDir(final File path) { //是文件,本分支不能删除 if (!path.isDirectory()) { return false; } File[] files = path.listFiles(); //空目录 if (files == null || files.length == 0) { //在上层删除。 //path.delete(); return true; } for (File sub : files) { //追求代码简单,是否文件在调用中判断 if (!deleteEmptyDir(sub)) { return false; } sub.delete(); } return true; }