【发布时间】:2015-10-25 02:34:20
【问题描述】:
我想知道如何在java中打开一个文件进行写入,但我只想在它已经存在的情况下打开它。那可能吗?到目前为止,我已经四处搜索,发现了两个都不符合我的需求的建议。一个是打开一个文件进行附加。问题在于,如果文件不存在,它将创建它。第二个是首先使用 file.exists() 。这当然不是一个有效的解决方案,因为当我调用 file.exists() 时文件可能存在,但在我打开文件时不存在。我想要类似于 Windows API OpenFile() 的东西,我可以在其中传递 OPEN_EXISTING 标志,以便在文件不存在时调用将失败。 java中是否存在类似的东西?
仅编辑问题,因为它被标记为重复。不知道为什么。我认为我对其他答案以及为什么它们不够用非常具体。
所以我重申一下,我想打开一个文件来写。如果文件不存在,我希望打开失败。
【问题讨论】:
-
文件 f = new File(filePathString); if(f.exists() && !f.isDirectory()) { /* 做某事 */ }
-
@SumitTrehan 感谢您复制粘贴我的答案 :)
-
不是复制粘贴..这是一个非常常见的代码。我没有看你的答案。
-
@ejp,你没有准备好我的问题吗?我在那里特别声明其他帖子没有回答我的问题。使用 file.exists() 是不够的。