注意:
请不要直接复制代码,就往自己电脑上粘贴运行(这太危险了/(ㄒoㄒ)/~~),因为每个人电脑的磁盘分布可能不同,而且文件也是不同的,最重要的是,java中的程序,删除的文件是不进入回收站的,也就是无法恢复的,所以,请先认真阅读代码,理解了再进行下一步操作…
简单的
import java.io.File;
/*
* 递归删除多层文件目录
*/
public class Test {
public static void delDir(File file){
if(file.isFile()){
boolean delete = file.delete();
if(delete) {
System.out.println(file.getAbsolutePath()+":删除成功..");
}else {
System.out.println(file.getAbsolutePath()+":删除失败..");
}
}
else{
for(File sonfile:file.listFiles()){
delDir(sonfile);
}
}
boolean delete1 = file.delete();
if(delete1) {
System.out.println(file.getAbsolutePath()+":删除成功..");
}else {
System.out.println(file.getAbsolutePath()+":删除失败..");
}
}
public static void main(String[] args) {
File file=new File("F:\\aaa\\bbb");
Test.delDir(file);
}
}
详细的
import java.io.File;
public class FileTest1 {
/*
* 递归删除多层文件目录
*/
public void delFile(String path) {
File file=new File(path);
String[] list = file.list();
int length=list.length;
if(length !=0) {
for(int i=0;i<list.length;i++) {
File newFile=new File(path,list[i]);
boolean directory = newFile.isDirectory();
if(directory) {
String path2 = newFile.getPath();
System.out.println(path2);
delFile(path2);
}else {
boolean delete = newFile.delete();
if(delete) {
System.out.println(newFile.getName()+":删除成功");
}else {
System.out.println(newFile.getName()+":删除失败");
}
}
}
}else {
boolean delete = file.delete();
if(delete) {
System.out.println(file.getName()+":删除成功");
}else {
System.out.println(file.getName()+":删除失败");
}
String parentPath = file.getParent();
String oldPath="F:\\eclipseWorkspace\\aaa\\bbb\\ccc";
boolean equals = parentPath.equals(oldPath);
if(equals) {
return;
}else {
delFile(parentPath);
}
return;
}
}
public void test() {
File file3 = new File("F:/aaa/bbb/ccc/ddd/eee/fff/ggg/hhh/jjj/iii");
boolean b = file3.mkdirs();
if (b) {
System.out.println("创建目录成功...");
} else {
// 如果已经目录存在,无法创建成功
System.out.println("创建目录失败...");
}
String path="F:\\aaa\\bbb\\ccc";
delFile(path);
}
public static void main(String[] args) {
FileTest1 ft=new FileTest1();
ft.test();
}
}