我有一个文件,我已经禁止每个许可.没有人应该能够阅读文件,对吧?其实如果我跑
File f = new File("not_readable.pdf"); System.out.println(f.canRead())
我得到
false
但是,如果我打电话
File f = new File("not_readable.pdf"); System.out.println(f.length())
我得到
455074
我的理解是,为了获取文件的大小,首先必须打开并读取文件,但这个结果强烈地表明我错了.有人知道为什么会这样吗?另外,有没有办法阻止Java的file.length()方法访问文件的大小?
我使用的是Ubuntu 12.10