为了账号安全,请及时绑定邮箱和手机立即绑定

如何检查Java中是否存在文件?

如何检查Java中是否存在文件?

凤凰求蛊 2019-06-15 18:36:40
如何检查Java中是否存在文件?在打开文件以进行Java阅读之前,如何检查文件是否存在?(相当于Perl的-e $filename).唯一关于SO的类似问题处理写入文件,因此使用FileWriter回答,这显然不适用于这里。如果可能的话,我更喜欢返回true/false的真正API调用,而不是某些“调用API打开文件并在它抛出异常时捕获它,您可以在文本中检查‘没有文件’”,但我可以接受后者。
查看完整描述

3 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

使用java.io.File:

File f = new File(filePathString);if(f.exists() && !f.isDirectory()) { 
    // do something}


查看完整回答
反对 回复 2019-06-15
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

我建议用isFile()而不是exists()..大多数情况下,您希望检查路径是否指向一个文件,而不仅仅是它的存在。记住exists()如果路径指向目录,则返回true。

new File("path/to/file.txt").isFile();

new File("C:/").exists()将返回true,但不允许您将其作为文件打开和读取。


查看完整回答
反对 回复 2019-06-15
?
桃花长相依

TA贡献1860条经验 获得超8个赞

通过在Java SE 7中使用NiO,

import java.nio.file.*;Path path = Paths.get(filePathString);if (Files.exists(path)) {
  // file exist}if (Files.notExists(path)) {
  // file is not exist}

如果两者都存在,并且notExist返回false,则无法验证文件的存在。(可能无法访问这条路径)

您可以检查路径是目录还是常规文件。

if (Files.isDirectory(path)) {
  // path is directory}if (Files.isRegularFile(path)) {
  // path is regular file}

请查一下这个JavaSE 7教程.


查看完整回答
反对 回复 2019-06-15
  • 3 回答
  • 0 关注
  • 1115 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信