为什么这段代码返回false?
即使我从文件(已存在)进行转换:
Path path = Paths.get("C:\\aaa\\bbb\\ccc");
Files.exists(path); // false!?
即使我从文件(已存在)进行转换:
File file = new File("C:\\aaa\\bbb\\ccc");
file.exists(); // true!!!
Path path = file.toPath();
Files.exists(path); // still false!?
Files.size(path);
会抛出异常吗?如果会,那么这个异常是否包含有意义的信息? - VGRmkdir -p /mnt/c/aaa/bbb
touch /mnt/c/aaa/bbb/ccc
File file = new File("C:\\aaa\\bbb\\ccc"); System.out.println(file.exists()); // true Path path = file.toPath(); System.out.println(Files.exists(path)); // true
- Scary WombatC:\aaa\bbb\ccc
是一个符号链接吗?文件的权限是什么?请创建一个 [mcve] 来演示这个问题,并验证如果周围没有其他代码,这个问题是否仍然存在。请发布 [mcve] 的完整代码。 - Jim Garrison