我一直在寻找一种方法来确定文件是否是一个交汇点,并且没有找到任何令人满意的答案.
我尝试的第一件事是:
Files.isSymbolicLink(aPath)
Run Code Online (Sandbox Code Playgroud)
它仅检测符号链接,而不检测Windows中称为联结的文件.
还尝试了这里提出的解决方案(使用JNA库): Stackoverflow问题(3249117) ,但它永远不会在我知道的任何文件中返回true.
我发现确定哪些文件是联结的唯一方法是在Windows命令提示符下运行以下命令:
DIR /S /A:L
Run Code Online (Sandbox Code Playgroud)
在我的计算机上它返回66个文件夹,而且Files.isSymbolicLink(aPath)仅返回2.所以我想我可以找到一种方法来利用它,但我认为在遍历文件树时它不会非常有效.
有没有办法使用标准的java库,或者替代JNA?