C:tototmpsub sub_b exists ? true Path equals ? true Obj equals ? false 但是 sub_a 的存在显然是误报,因为它检查了另一个文件夹的存在,而不是 getAbsolutePath() 所描述的文件夹。 所以我强烈怀疑 File.exists() 取决于实际的Java执行路径,并且该文件存在与绝对路径不一致,并且 exists() 使用另一个...
另一个答案是关于更改系统设置以阻止它比现在更进一步发生,这根据命令解释器的 DIR命令使用而变化。例如,Take Command中的 DIR命令仅默认匹配长名称,因此不会出现此行为。 (可以打开匹配短名称和长名称以与CMD的 DIR命令兼容。)因此,有一些方法可以解决这个问题,不需要 FSUTIL和管理员权限。