级联删除文件夹及文件
代码如下:
/**
* @description : 用于删除临时文件
*/
public static void deleteFile(File file) throws IOException {
File[] fileArray = file.listFiles();
if(fileArray.length>0){
for (int i = 0;i<fileArray.length;i++){
if(fileArray[i].isFile()){
if(fileArray[i].delete()) {
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
}else {
deleteFile(fileArray[i]);
}
}
}
if(file.delete()){
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
}
demo:
String filePath = request.getSession().getServletContext().getRealPath("/temp");
//文件夹位置
File f = new File(filePath + "/demo");
if (!f.exists()) {//如果没有这个目录,
f.mkdirs();//就创建一个新的目录
}
// 删除demo文件夹及文件夹内文件
deleteFile(f);
注意:应用过程中,如果有流生成,需要先关闭流。