如何避免此java.io.FileNotFoundException?

如何避免此java.io.FileNotFoundException?,java,Java,当我输入“搜索”的完整文件路径(C:\Users\djustinwebb\Documents\BlueJ Projects\LightHouse)并尝试打开文件时,我得到了错误: java.io.FileNotFoundException:C:\Users\djustinwebb\Documents\BlueJ Projects\LightHouse(访问被拒绝)(在java.io.FileInputStream中) 我输入了“invoicedata.txt”进行搜索,虽然它没有正确读取文件,但

当我输入“搜索”的完整文件路径(C:\Users\djustinwebb\Documents\BlueJ Projects\LightHouse)并尝试打开文件时,我得到了错误: java.io.FileNotFoundException:C:\Users\djustinwebb\Documents\BlueJ Projects\LightHouse(访问被拒绝)(在java.io.FileInputStream中)

我输入了“invoicedata.txt”进行搜索,虽然它没有正确读取文件,但它仍然有效,但我想知道为什么在使用完整文件路径时它不起作用。要使用完整文件路径而不发生此错误,我需要做什么

public String searchCase()throws FileNotFoundException
{
    String fileLine = null;

    StringTokenizer stok = null;

    Scanner inputFile = new Scanner(new File(search));


    String whatever = null;



    while(inputFile.hasNextLine())
    {
        fileLine = inputFile.nextLine();
        stok = new StringTokenizer(fileLine,",");

        caseLCount++;

        while(stok.hasMoreTokens())
        {
            if(userWord.equals(stok.nextToken()))
            {
                caseWCount++;

                whatever += caseLCount + ".\n";
            }//end if
        }// end nested while
    }//end outer while
    inputFile.close();
    return whatever;
}// end searchCase()

发生这种情况的原因是您试图打开并读取一个
目录
,即
灯塔
。您也应该在文件路径中输入文件名,如下所示,
。\LightHouse\invoicedata.txt


如果要区分文件和文件夹,请使用
isFile()
isDirectory()
方法。您可以使用
list()
listFiles()
方法获取文件夹的内容。

文件确实存在于该路径上吗?你能从另一个程序打开这个文件吗?尝试在管理模式下运行Java进程。这似乎是权限问题。它拒绝访问的事实意味着它确实试图打开该文件