使用File对象的Java.io.FileNotFoundException

时间:2013-02-19 19:50:16

标签: java filenotfoundexception java-io

File read = new File("Numbers.txt");
Scanner inputFile = new Scanner(read);

while(inputFile.hasNext())
{
    sum = inputFile.nextDouble() + sum;
    count++;
}

inputFile.close();//close the input file

我正在尝试从文本文件Numbers.txt中读取数据,以下代码编译正常,但程序运行时出现Java.io.FileNotFoundException错误。我也试过输入完整的文件路径,但我可能做错了。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

确保您的文本文件位于包含java文件的文件夹中 因为你使用了直接路径。 并尝试此代码检查,如果仍然无法正常工作。

BufferedReader read = new BufferedReader(new FileReader("yourTextFile.txt"));
String line = read.readLine();

while(line !=null)
{
     System.out.println(line);
     line=read.readLine();
}
}catch(Exception ex)
{System.out.println(ex.getMessage());}

答案 1 :(得分:1)

尝试添加

System.out.println("Full path is " + read.getCanonicalPath()
                   + ", canRead=" + read.canRead()
                   + ", exists=" + read.exists());

然后查看文件系统上是否存在完整路径,以及根据canRead是否可读。

如果文件是符号链接,canRead可能会返回true,因为即使链接指向的文件不可读,符号链接也是可解析的。要正确处理符号链接,您确实需要使用新的java.nio.file API。