我无法想到该方法的实际用例java.io.File.exists()
或其在 Java 7 中的等价物java.nio.file.Files.exists(Path)
。似乎isFile()
orisDirectory()
在所有情况下都更可取(或canRead()
,canWrite()
等)。
例如,在如何检查文件是否存在于 Java 中?,正如第二个答案指出的那样,接受的答案似乎很愚蠢。
任何人都可以举一个例子,在不知道该事物是文件还是目录的情况下知道事物存在是有用的吗?
编辑:我明白是什么File.exists()
。我的问题是,该功能何时可以帮助某人?我正在寻找一个示例,例如“File.exists()
在 _ _ _ _ _ _ 时使用,因为在这种情况下既不增加File.isFile()
也不File.isDirectory()
增加任何价值。”
回想起来,我认为我在这里的困惑是关于File
类的 JavaDoc 中两个看似矛盾的陈述。第一句话将类定义为,
文件和目录路径名的抽象表示。
这听起来像是一个明确的二分法。但在更远的地方,医生反驳说,
此类的实例可能表示也可能不表示实际的文件系统对象,例如文件或目录。
我认为第三个文件系统对象的示例对文档有很大帮助。但该类别似乎连名字都没有,导致Files
该类的 JavaDoc 措辞很尴尬:静态方法的集合,
对文件、目录或其他类型的文件进行操作。
在接受的答案中,@koral 将这些其他类型称为“特殊文件”。这对我来说似乎很合适。它们是如此特别,我不知道它们的存在。