FileNotFoundException异常。我不明白

时间:2015-06-30 21:36:22

标签: java filenotfoundexception

我似乎可以理解为什么我的代码没有编译。每次我运行它,我都会得到一个FILENOTFOUNDException。任何帮助将非常感激。 :d

public static void main(String args[]) throws IOException 
    {

        Scanner diskScanner = 
                new Scanner(new File("EmployeeInfo.txt"));

        for(int empNum = 1; empNum<=3; empNum++)
        {
            payOneEmployee(diskScanner);
        }

    }
    static void payOneEmployee(Scanner aScanner)
    {
        Employee anEmployee = new Employee();

        anEmployee.setName(aScanner.nextLine());
        anEmployee.setJobTitle(aScanner.nextLine());
        anEmployee.cutCheck(aScanner.nextDouble());
        aScanner.nextLine();
    }

1 个答案:

答案 0 :(得分:1)

基本上,异常消息表示您指定的文件名不是执行目录中的现有文件。

编辑 [从我的评论中复制]
该文件应该位于编译完成的位置,如果您使用的是eclipse或intellij,它应该位于您的项目根目录中。
+因为您将a relative path and not an absolute one传递给文件,所以java将其识别为执行目录的相对位置,该目录位于以下代码所指向的位置。

要检查所需的输入文件目录是什么,只需使用  该文件 getAbsolutePath() 例如:

File input = new File("EmployeeInfo.txt");
System.out.println("Move .txt to dir:" + input.getAbsolutePath());
Scanner diskScanner = new Scanner(input);

然后将源.txt文件移动到该位置