导航:首页 > 编程语言 > 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递归删除相关的资料

热点内容
什么型号的板子能上服务器内存 浏览:397
androidapk图标设置 浏览:42
最早提出分数运算法的着作 浏览:922
安卓邮箱怎么保存照片 浏览:269
hdfspythonapi 浏览:851
qt如何搭建web服务器 浏览:58
程序员红包算法 浏览:792
亚马逊安全的更换云服务器 浏览:728
服务器线程数怎么设置 浏览:605
考研词汇红宝书2019pdf 浏览:981
如何利用安卓手机wifi修改密码 浏览:373
辞海分册pdf 浏览:935
安卓系统页面怎么调 浏览:775
压缩文件的用法 浏览:34
如何用浏览器访问服务器地址 浏览:207
soft编译器 浏览:113
三轴车床的编程指令 浏览:71
天生敏感pdf 浏览:565
西瓜星球服务器怎么刷钻石 浏览:838
php生成chm 浏览:658