【问题标题】:Java 1.8 Windows Server 2016 file.isDirectory is always falseJava 1.8 Windows Server 2016 file.isDirectory 始终为 false
【发布时间】:2019-05-06 07:23:02
【问题描述】:

我在 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");

但总是返回值是假的。我尝试了映射,创建了一个符号链接。 我也尝试了java nio,但没有任何改变。有谁知道为什么?是 Windows 还是 Java 的 bug?

谢谢

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

    • \f 是换页符(根据同一个链接)。
    猜你喜欢
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-29
    • 2015-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多