无法打开文件以进行读取虽然文件位于同一目录中

时间:2014-04-01 17:09:56

标签: java exception file-io

这是我的档案目录

enter image description here

我正在尝试打开admin.dat进行阅读但不明白为什么我无法打开文件并且始终抛出FileNotFound异常

代码:

public void readfile(){
    try{
        Scanner filereader = new Scanner(new File("admin.dat"));
        String data;

        while(filereader.hasNextLine()){
            data = filereader.nextLine();
            System.out.println(data);
        }
    }
    catch (FileNotFoundException e){
        System.out.println("File not found");
    }
    catch (IOException e){
        System.out.println("Error while reading file");
    }
}

1 个答案:

答案 0 :(得分:2)

通常当您通过IDE启动应用程序时,他们将当前目录设置为项目的根目录,因此您需要从那里传递相对路径

您可以通过

检查设置为当前目录的内容
System.out.println(System.getProperty("user.dir"));

同样只要文件作为真实文件存在就可以正常工作,如果你将它捆绑在jar或其他形式的存档中它将停止工作,那么read it as Resource from classpath

更好