File.delete()和Files.delete(Path path)的区别

文件删除时可以选择File.delete()和Files.delete(Path path),这两个方法到底有什么区别呢?

 

//删除暂存的pdf
File file =new File(pdfFilename);
file.delete();

Path path2 = Paths.get(pdfFilename);
Files.delete(path2);

以下就用表格一一列举出来File.delete()和Files.delete(Path path)的区别:

 

File.delete()

Files.delete(Path path)

JDK

JDK1.0

JDK1.7

来源

java.io.File对象的实例方法

java.nio.file.Files类的静态方法

参数

无参

Java.nio.file.Path

返回值

boolean

void

异常声明

无声明

声明抛出java.io.IOException

文件不存在

不抛异常,返回false

抛java.nio.file.NoSuchFileException

删除非空目录

无法删除,返回false

无法删除,抛java.nio.file.DirectoryNotEmptyException

删除被占用文件

无法删除,返回false

无法删除,抛java.nio.file.FileSystemException

其他原因文件无法删除

不抛异常,返回false

抛java.io.IOException的具体子类

posted on 2020-03-24 21:37  腾逸  阅读(5976)  评论(0编辑  收藏  举报