This question already has answers here:
both File.isFile() and File.isDirectory() is returning false
(6个答案)
2年前关闭。
预期结果是:
但实际上结果是:
文件D:\a.log实际上存在并且路径正确,jdk版本是1.8.0_11,而os是win10
如何理解这一点?
(6个答案)
2年前关闭。
public class Test {
public static void isFile() {
System.out.println(new File("D:\\a.log").isFile());
}
public static void main(String[] args) {
System.out.println(new File("D:\\a.log").isFile());
isFile();
}
}
预期结果是:
true
true
但实际上结果是:
false
true
文件D:\a.log实际上存在并且路径正确,jdk版本是1.8.0_11,而os是win10
如何理解这一点?
最佳答案
"D:\\a.log"
方法中的字符串main
具有9个字符,而isFile
方法中的字符串具有8个字符。main
方法中的一个以不可见的Unicode字符U + 202A(“从左向右嵌入”)开头。
用main
内的字符串替换isFile
内的字符串,或从main
的字符串中删除第一个不可见字符。
(注意:这显示了复制粘贴实际代码的真正好处,因为问题出在上面问题中粘贴的代码中)
09-09 22:16