导航:首页 > 编程语言 > java递归删除

java递归删除

发布时间:2023-08-09 19:23:07

java:删除某文件夹下的所有文件该如何实现呢

先读取整个目录,循环遍历目录下所有文件,判断是否为文件夹 使用file.isDirectory() ,它返回的布尔值,是文件夹返回true,如果返回是false值,就file.delete(),这样就可以满足你要的效果了,望采纳谢谢。

❷ Java如何删除文件夹下的子目录及其包含的子文件

下面给你介绍Java删除文件夹下的子目录及其包含的子文件的方法:
package com.cn.test1;
import java.io.File;
public class DeleteAllFiles {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String filePath = "e:\\fq\\";
System.out.println("开始删除文件");
File file = new File(filePath);
// deleteFile(file);
deleteAllFilesOfDir(file);
System.out.println("删除成功!!");
}

//递归删除文件夹(方法一)
public static void deleteFile(File file) {
if (file.exists()) {//判断文件是否存在
if (file.isFile()) {//判断是否是文件
file.delete();//删除文件
} else if (file.isDirectory()) {//否则如果它是一个目录
File[] files = file.listFiles();//声明目录下所有的文件 files[];
for (int i = 0;i < files.length;i ++) {//遍历目录下所有的文件
deleteFile(files[i]);//把每个文件用这个方法进行迭代
}
file.delete();//删除文件夹
}
} else {
System.out.println("所删除的文件不存在");
}
}
//方法二
public static void deleteAllFilesOfDir(File path) {
if (!path.exists())
return;
if (path.isFile()) {
path.delete();
return;
}
File[] files = path.listFiles();
for (int i = 0; i < files.length; i++) {
deleteAllFilesOfDir(files[i]);
}
path.delete();
}
}

❸ 请问用java 如何实现逻辑删除文件

把文件名用数据库管理起来,

先确定某个目录下放置你逻辑删除的文件,

每次删除文件把原路径和删除后的保存的路径放置到数据库,

当你需要还原的时候通过查询数据库再拷回去就可以了.

当然你想做直接删除也可以,不放入数据库直接删就行了

事实上windows 也是这样管理的,删除时移动到回收站而已,不过比这个有效率多了.

❹ java我删除一个文件的时候如果文件删除成功了,还需要判断该文件所在的文件夹是否为空如果为空的话也要删

// 正向递归删除路径下的文件
public void delFile(String path){
File file = new File(path);
if(file.exists()&&file.isFile()){
file.delete();
}else if(file.exists()&&file.isDirectory()){
File[] files = file.listFiles();
if(files!=null){
for(File f:files){
if(f!=null){
delFile(f.getAbsolutePath());
}
}
}
}
}
// 逆向递归删除空目录
public void delEmptyPath(String path){
File file = new File(path);
if(file.exists()&&file.isDirectory()){
File[] files = file.listFiles();
if(files!=null&&files.length>0)
return;
if(file.delete()){
delEmptyPath(file.getParent());
}
}
}
// 把上面两个方法先后调用就能达到你的目的
public void delDirectories(String path){
File file = new File(path);

delFile(file.getAbsolutePath());
delEmptyPath(file.getParent());
}

❺ java文件夹作为临时存放目录,怎样在系统运行完之后清空

importjava.io.File;
publicclassTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
StringfilePath="E:\test\test";
Filefile=newFile(filePath);
//调用静态方法删除目录或文件
Test.removeDir(file);
}

publicstaticvoidremoveDir(Filefile){
if(!file.exists()){//目录不存在
return;
}else{
if(file.isFile()){//地址指向一个文件时,就删除这个文件
file.delete();
}else{//当地址指向一个文件夹或目录
File[]fileArray=file.listFiles();
for(inti=0;i<fileArray.length;i++){
//递归删除目录下的文件
removeDir(fileArray[i]);
}
//删除目录
file.delete();
}
}
}
}

阅读全文

与java递归删除相关的资料

热点内容
pdf猫压缩 浏览:49
数据挖掘分类算法研究 浏览:101
河北航天发票认证服务器地址 浏览:727
阿里程序员绩效录入 浏览:382
eb蜜罐原理及源码 浏览:803
命令界面怎么调大小 浏览:890
公共测试服务器做什么的 浏览:746
湖南网络服务器云空间 浏览:365
做博客需要什么app 浏览:548
查看网站编程语言 浏览:302
我的世界服务器的密码怎么弄 浏览:644
电脑文件夹如何传输视频不压缩 浏览:145
安卓对单片机编程 浏览:728
被加密的txt 浏览:927
单片机汇编调用子程序 浏览:253
小米定位服务器地址 浏览:612
有什么好的学画app 浏览:882
5线4相步进电机单片机控制 浏览:293
linux重启php命令行 浏览:999
加密软件gif 浏览:761