繁体   English   中英

java.io.FileNotFoundException:.svn(访问被拒绝)

[英]java.io.FileNotFoundException: .svn (Access is denied)

我正在遍历 Java 中的目录,试图读取每个文件。 该目录包含一些拒绝访问的 svn 文件。 我可以测试文件名并跳过 svn 文件,但如果我发现其他文件被拒绝访问,此解决方案将不可靠。 我试过这个:

for(File f : dir.listFiles()){
if(f.canRead()){
    System.out.println("Trying " + f.getAbsolutePath());
    try{
        Scanner sc = new Scanner(f);
    }
    catch(IOException e){
        e.printStackTrace();
    }
    continue;
}
}

但是,当我到达 .svn 文件时,它并没有跳过; 我得到这个打印输出:

Trying C:\dir\.svn
java.io.FileNotFoundException: dir\.svn (Access is denied)

canRead()canWrite()canExecute()都有同样的问题。 除了canXXX()之外,还有什么可以用来跳过拒绝访问的文件吗?

.svn是一个目录。 这可能不是您可以使用Scanner阅读的内容。

将您的条件更改为:

if(f.canRead() && !f.isDirectory())

您可以捕获FileNotFoundException并移至下一个文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM