【发布时间】:2020-01-06 03:27:44
【问题描述】:
我确定该文件存在于 Samba 共享中。但是file.exists() 为它返回'false'。
另一个系统将此文件放在 Samba 共享文件夹中,并通知我们的应用程序该文件已上传。然后我们调用file.exists() 进行检查并获得'false'
Path sourceFile = ...
sourceFile.toFile().exists()
//return 'false' for existing file with path like \\share1\mc\logs.txt
可能文件还没有完全写入或者没有完全关闭,会不会影响结果file.exists()?
【问题讨论】:
-
澄清一下:您使用的是
java.io还是java.nio.file包? -
@ShiDoiSi 我可能错过了你的问题的微妙之处,但没有
java.io.Path,只有java.nio.file.Path -
你能打印出路径并把它和
sourceFile.toFile()的结果贴出来吗?显示的代码对我来说工作正常 -
@aaron 你说得对,我只看了
File。那一定是NIO。 -
@ShiDoiSi NIO 只代表 Path 获取
File;真正的工作是由java.io.File#exists