我在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的错误?
谢谢
答案 0 :(得分:5)
我打赌file.exists ()
也会返回false
。这既不是Java也不是Windows中的bug。 \
字符是Java字符串文字中的转义字符。如果要在字符串中使用文字反斜杠,则需要编写"\\"
。请参阅Java教程中的Characters。