干净的Java 7创建文件的方法,如果不存在[已关闭]
如果 Java 7 或 Java 8 不存在,创建文件的方法是什么?
不确定你想要什么,但例如:
try {
Files.createFile(thePath);
} catch (FileAlreadyExistsException ignored) {
}
还有其他解决方案;例如:
if (!Files.exists(thePath, LinkOption.NOFOLLOW_LINKS))
Files.createFile(thePath);
请注意,与 不同,如果文件创建失败,这些将引发异常!以及相关的(例如,,,等)File
AccessDeniedException
ReadOnlyFileSystemException
有关详细信息,请参阅此处。另请参阅为什么您应该快速迁移到java.nio.file
。
你可以做
File f = new File("pathToYourFile");
if(!f.exists() && !f.isDirectory())
{
f.createNewFile()
}
如果你想使用NIO.2,你可以使用方法文件类。
boolean exists(Path path,LinkOption. . . options)
Path createTempFile(Path dir, String prefix,String suffix, FileAttribute<?>. . . attrs)
createFile(Path path, FileAttribute<?>... attrs)
正如 fge 在注释中提到的,方法返回值,表示文件是否实际创建。不幸的是,没有办法知道为什么它失败了。事实上,这是NIO.2 I/O API被引入的原因之一。createNewFile()
boolean