我在 Windows Server 2016 上使用 Java 1.8,我的代码包含如下测试条件:
String path = "\\myserver\folder";
File file = new File(path);
if(file.isDirectory())
System.out.println("is a dir");
else
System.out.println("is not a dir");
但返回值始终为 false。我尝试映射,创建符号链接(symbolic link)。 我也尝试了 java nio 但没有任何改变。有谁知道为什么?是Windows还是Java的bug?
谢谢
最佳答案
我敢打赌file.exists ()
也会返回false
。这既不是 Java 中的错误,也不是 Windows 中的错误。 \
字符是 Java 字符串文字中的转义字符。如果您想在字符串中使用反斜杠,则需要编写 "\\"
。请参阅Characters在 Java 教程中。
关于Java 1.8 Windows Server 2016 file.isDirectory 始终为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53620191/