我遇到了一个似乎没有任何逻辑的错误。我有一个文件对象,它是这样创建的:
File file = new File("utilities/data/someTextFile.txt");
然后我执行file.exists()
,它返回false
(!?)。如果文件未找到,我会将f.getAbsolutePath()
记录到文件中。查看路径时,似乎一切正常。我可以将完整路径复制粘贴到Windows的“运行”窗口中,文件就能打开。
该文件始终存在,并且在应用程序运行期间未被删除或更改。它位于本地计算机上。
这种情况只在某些情况下发生。我可以随时重现故障,但我确定文件对象的路径不会因我重现故障而改变。
什么原因会导致file.exists()
返回false?这与权限或文件锁有关吗?