Java 1.8 Windows Server 2016 file.isDirectory始终为false

时间:2018-12-04 19:33:46

标签: java java-8 windows-server-2016

我在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。我尝试映射,创建一个符号链接。 我也尝试了java nio,但没有任何改变。有人知道为什么吗?是Windows还是Java的错误?

谢谢

1 个答案:

答案 0 :(得分:5)

我打赌file.exists ()也会返回false。这既不是Java也不是Windows中的bug。 \字符是Java字符串文字中的转义字符。如果要在字符串中使用文字反斜杠,则需要编写"\\"。请参阅Java教程中的Characters