如果不存在,请清理Java 7创建文件的方法

emo*_*ull 11 java file-io nio

如果文件不存在,那么创建文件的Java 7或Java 8方法是什么?

fge*_*fge 24

不确定你想要什么,但例如:

try {
    Files.createFile(thePath);
} catch (FileAlreadyExistsException ignored) {
}
Run Code Online (Sandbox Code Playgroud)

还有其他解决方案; 例如:

if (!Files.exists(thePath, LinkOption.NOFOLLOW_LINKS))
    Files.createFile(thePath);
Run Code Online (Sandbox Code Playgroud)

请注意,与File文件创建失败一样,这些将抛出异常!而相关的多个在那(例如AccessDeniedException,ReadOnlyFileSystemException,等等等等)

有关更多信息,请参见此处 另请参阅为什么要java.nio.file快速迁移到.

  • 不,但这真的很重要吗?;)如果你愿意,你可以创建自己的实用工具方法,这不是一个真正的问题 (2认同)
  • 尝试{Files.createFile(thePath); } catch(忽略FileAlreadyExistsException){} (2认同)