当前位置:首页 » 文件管理 » java递归删除文件夹

java递归删除文件夹

发布时间: 2022-02-28 18:47:41

java用户输入路径后 用递归方法删除文件,用户输入路径该怎么写 是输入一个路径都能删的,Sanner方法的

Scannerscan=newScanner(System.in);
Stringpath=scan.nextLine();

deleteAll(path);

publicvoiddeleteAll(Stringpath){
deleteAll(newFile(path));
}

publicvoiddeleteAll(Filefile){
if(file.isDictionary()){
File[]files=file.listFiles();
for(Filef:files){
deleteAll(f);
}
file.delete();
}else{
file.delete();
}
}

⑵ java 中实现递归删除文件

public static void main(String[] args) throws IOException {
List<String> list = new ArrayList();
list.add("c:/1.txt");
list.add("c:/2.txt");
list.add("c:/3.txt");
delete(list);
}
public static boolean delete(List<String> list) {
if (list.size() > 0) {
File file = new File(list.get(0));
file.deleteOnExit();
list.remove(0);
delete(list);
}
return true;
}

⑶ 怎么写 java 递归解决删除文件夹以及子文件

上面的代码好多余
/**
* 递归删除该文件或者该文件夹
*
* @param parentPath
* @return
*/
public static boolean recursionDelete(String parentPath) {
return recursionDelete(new File(parentPath));
}

/**
* 递归删除该文件或者该文件夹
*
* @param parentFile
* @return
*/
public static boolean recursionDelete(File parentFile) {
if (parentFile.isDirectory()) {
for (File file : parentFile.listFiles()) {
recursionDelete(file);
}
}
return parentFile.delete();
}

⑷ 今天写了个java复制文件夹的测试程序,递归遍历文件夹下的所有文件夹和文件进行复制,

这种问题用360或QQ电脑管家的文件粉碎,粉碎下就好了,但小心别搞错文件就不好办了,建议楼主直接把要粉碎的文件拖到粉碎工具那里进行粉碎.

⑸ JAVA遍历一个文件夹中的所有文件---(递归)

public void traverseFolder2(String path) {

File file = new File(path);

if (file.exists()) {

File[] files = file.listFiles();

if (null == files || files.length == 0) {

System.out.println("文件夹是空的!");

return;

} else {

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

traverseFolder2(file2.getAbsolutePath());

} else {

System.out.println("文件:" + file2.getAbsolutePath());

}

}

}

} else {

System.out.println("文件不存在!");

}

}

(5)java递归删除文件夹扩展阅读

public void traverseFolder1(String path) {

int fileNum = 0, folderNum = 0;

File file = new File(path);

if (file.exists()) {

LinkedList<File> list = new LinkedList<File>();

File[] files = file.listFiles();

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);

foldeNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

File temp_file;

while (!list.isEmpty()) {

temp_file = list.removeFirst();


files = temp_file.listFiles();

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);

folderNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

}

} else {

System.out.println("文件不存在!");

}

System.out.println("文件夹共有:" + folderNum + ",文件共有:" + fileNum);

}

⑹ java 如何递归控制每个文件夹包含的子文件夹数固定为1024个,超过则新建文件夹

f.listFiles()能获得此文件夹下面有多少个文件(包含文件夹)
如果只判断文件夹数的话再来一层for判断一下即可~
public static void main(String[] args) {
File f = new File("d:\\Program Files");
File[] childArr = f.listFiles();

int count = 0;
if( null == childArr)
{
System.out.println(" Parent directory not exits");
return;
}
for (File file : childArr) {
if(file.isDirectory())
{
count ++;
}
}
System.out.println(" Directory " + count);
}

⑺ 用Java的IO编写 1.递归删除当前目录及其子目录下全部文件,并统计删除数目 2.图片拷贝

static int count = 0;
public static void deleteFile(String path) {
if(path == null) {
return;
}
File file = new File(path);
if(!file.exists()) {
return;
}
if(!file.isDirectory()) {
count ++;
file.delete();
return;
}
File[] fileList = file.listFiles();
for(File fc : fileList) {
deleteFile(fc.getAbsolutePath());
}
file.delete();
count ++;
}

⑻ java 中的file中怎么删除全部文件夹

可参考如下代码,代码说明写代码后注释上

示例代码如下:
importjava.io.File;
publicclassTest
{
publicstaticvoidmain(Stringargs[]){
Testt=newTest();
delFolder("c:/bb");
System.out.println("deleted");
}

//删除文件夹
//paramfolderPath文件夹完整绝对路径
publicstaticvoiddelFolder(StringfolderPath){
try{
delAllFile(folderPath);//删除完里面所有内容
StringfilePath=folderPath;
filePath=filePath.toString();
java.io.FilemyFilePath=newjava.io.File(filePath);
myFilePath.delete();//删除空文件夹
}catch(Exceptione){
e.printStackTrace();
}
}

//删除指定文件夹下所有文件
//parampath文件夹完整绝对路径
publicstaticbooleandelAllFile(Stringpath){
booleanflag=false;
Filefile=newFile(path);
if(!file.exists()){
returnflag;
}
if(!file.isDirectory()){
returnflag;
}
String[]tempList=file.list();
Filetemp=null;
for(inti=0;i<tempList.length;i++){
if(path.endsWith(File.separator)){
temp=newFile(path+tempList[i]);
}else{
temp=newFile(path+File.separator+tempList[i]);
}
if(temp.isFile()){
temp.delete();
}
if(temp.isDirectory()){
delAllFile(path+"/"+tempList[i]);//先删除文件夹里面的文件
delFolder(path+"/"+tempList[i]);//再删除空文件夹
flag=true;
}
}
returnflag;
}
}

⑼ Java递归法读取文件目录

importjava.io.File;

publicclass${

publicstaticvoidmain(String[]args){

Stringpath="D:/";

test(path);
}

privatestaticvoidtest(Stringpath){
Filef=newFile(path);

File[]fs=f.listFiles();

if(fs==null){
return;
}

for(Filefile:fs){
if(file.isFile()){
System.out.println(file.getPath());
}else{
test(file.getPath());
}
}
}
}

⑽ java删除文件夹中指定的文件,必须判断文件名

java删除文件夹中指定的文件,必须判断文件名。

1.File folder = new File("files")。

2.File[] files = folder.listFiles()。

3.for(File file:files){if(file.getName().equals("name.txt")){file.delete()。



热点内容
rust搭建自己的服务器 发布:2024-10-28 10:27:05 浏览:412
defaultjava 发布:2024-10-28 10:25:58 浏览:204
oppoa57手机密码忘了怎么办 发布:2024-10-28 10:25:05 浏览:687
c语言编译栏 发布:2024-10-28 10:22:38 浏览:482
安卓系统哪个音质好 发布:2024-10-28 10:22:34 浏览:707
c语言中的read 发布:2024-10-28 10:20:26 浏览:110
手机酷狗上传自己的歌 发布:2024-10-28 10:11:47 浏览:461
phpcms无法访问 发布:2024-10-28 10:11:29 浏览:727
机顶盒支付密码是多少 发布:2024-10-28 10:09:56 浏览:618
缓存的视频很卡怎么回事 发布:2024-10-28 10:07:17 浏览:542