首页 > 编程知识 正文

java如何删除文件夹,java如何删除文件内容

时间:2023-05-05 07:54:26 阅读:41735 作者:2345

java如何删除文件和目录

发布时间: 2020-06-25 11:24:59

来源:亿速云

阅读: 156

作者: Leah

本文通过一个简单易懂的例子介绍了java如何删除文件和目录。 代码非常详细,感兴趣的伙伴们可以参考,希望对大家有帮助。

delete ()方法可用于删除文件或空目录/文件夹。 如果文件被删除,则返回true;如果文件不存在,则返回false。

删除目录时,delete (方法检查目录是否为空,如果目录为空,则删除目录。 否则,delete ) )方法将无所事事地返回false。 因此,在这种情况下,必须递归删除所有文件,然后删除目录。

删除非空目录的另一种方法是使用Files.walkFileTree ()方法。 此方法允许您单独处理所有文件,并在单个文件对象上调用delete ()方法。

删除文件示例: package com.journaldev.files; import java.io.File; 公共类删除文件Java {

//*

*此类演示如何在Java中删除文件

* @param args

*/

publicstaticvoidmain (字符串[ ] args ) {

//带路径的文件名

file file=new file (tmp/tmp2/file.txt );

if(file.delete () ) )。

system.out.println (tmp/tmp2/file.txtfile deleted );

} else system.out.println (' file tmp/tmp2/file.txt doesn ' t exist ' );

//只提供文件名

文件=new file (file.txt );

if(file.delete () ) )。

system.out.println (' file.txtfiledeletedfromprojectrootdirectory ' );

} else system.out.println (' file file.txt doesn ' texistintheprojectrootdirectory ' );

//relative path

file=newfile(temp/file.txt );

if(file.delete () ) )。

system.out.println (temp/file.txtfiledeletedfromprojectrootdirectory );

} else system.out.println (' file temp/file.txt doesn ' texistintheprojectrootdirectory ' );

//删除空目录

file=newfile('temp );

if(file.delete () ) )。

system.out.println (tempdirectorydeletedfromprojectrootdirectory );

} else system.out.println (tempdirectorydoesn ' texistornotemptyintheprojectrootdirectory ' );

//尝试删除非空目录

file=new file (d :/user/maxsu/project );

if(file.delete () ) )。

system.out.println (d :/user/maxsu/projectdirectorydeletedfromprojectrootdirectory );

} else system.out.println (d :/user/maxsu/projectdirectorydoesn ' texistornotempty );

}

注意:与createNewFile ()不同,delete方法不会抛出IOException异常。

以下简单过程说明如何删除非空目录。 如果目录包含文件,则删除目录将不会成功。

目录删除示例: import java.io.File; publicclassjavadeletedirectory {

publicstaticvoidmain (字符串[ ] args ) {

filedir=new file (d :/worksp/Java/log );

if(dir.isdirectory(==false ) {

系统. out.println (nota directory.do nothing );

返回;

}

File[] listFiles=dir.listFiles (;

文件文件:列表文件(for ) {

system.out.println (deleting ' file.getname );

file.delete (;

}

//现在目录为空,可以删除

system.out.println (deleting directory.success=' dir.delete ) );

}

递归删除目录示例: import java.io.IOException;

import Java.nio.file.filevisitresult;

import java.nio.file.Files;

import java.nio.file.Path;

import java.nio.file.Paths;

import Java.nio.file.simplefilevisitor;

import Java.nio.file.attribute.basicfileattributes;

publicclassjavadeletedirectoryrecursively {

publicstaticvoidmain (字符串[ ] args ) throws IOException { )。

path目录=paths.get (d :/worksp/maxsu/log );

files.walkfiletree (目录,new SimpleFileVisitor () )。

@Override

publicfilevisitresultvisitfile (pathfile,BasicFileAttributes attributes ) throws IOException {

files.delete (文件; //有效。 因为那总是文件

return FileVisitResult.CONTINUE;

}

@Override

publicfilevisitresultpostvisitdirectory (pathdir,IOException exc ) throws IOException {

files.delete(dir; //目录中的文件已被删除,因此此功能正常

return FileVisitResult.CONTINUE;

}

);

}

我们在此共享了java如何删除文件和目录。 我希望以上内容对大家有帮助。 你可以学到更多的知识。 如果你觉得文章不错,可以分享它给更多的人看。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。