使用Eclipse使用Java的FileNotFoundException

时间:2014-03-13 18:30:23

标签: java eclipse file io filenotfoundexception

我正在使用Eclipse并且处于学习Java的早期阶段

忙着学习如何从txt文件中读取数据,但在我的生命中不能让Java读取我的源文件

这是我的代码

import java.io.FileReader;
import java.util.Scanner;

public class MagellanSchoolQ2Coursework2 {

public static void main(String[] args) {

    Scanner detailsIn =new Scanner(new FileReader("c:\\s.txt"));
    detailsIn.close();
}

}

文本文件位于我的C盘的根目录中但由于某种原因我得到了FileNotFoundException

有谁知道为什么这不起作用

4 个答案:

答案 0 :(得分:1)

您必须使用try/catch包围方法,或在方法中添加throws子句。

E.g。

import java.io.FileReader;
import java.util.Scanner;


public class MagellanSchoolQ2Coursework2 {
    public static void main(String[] args) {
        try {
            Scanner detailsIn =new Scanner(new FileReader("c:\\s.txt"));
            detailsIn.close();
        } catch (FileNotFoundException e) {
            System.out.println("file not found: s.txt");
        }
    }
}

答案 1 :(得分:0)

实际上你用来创建FileReader实例的构造函数,它的签名如下所示

public FileReader(String fileName)抛出FileNotFoundException

在给定要读取的文件名的情况下,创建一个新的FileReader。

参数:fileName - 要从

中读取的文件的名称

抛出:FileNotFoundException - 如果指定的文件不存在,则是目录而不是常规文件,或者由于某些其他原因无法打开进行读取。

由于此方法抛出" FileNotFoundException"它应该使用try和catch块来处理(或者)主​​方法应该抛出上面的异常,这个异常将在运行时由JVM处理。如果你是EXCEPTIONS的新手,首先要更好地研究那个主题,然后尝试学习I / O流

答案 2 :(得分:0)

我认为这是一个操作系统问题。因为我在Linux中使用这个表单:" c:\ s.txt",但是在Windows中我使用它有点不同的版本:" c:\ s.txt"我们来试试吧! :)

答案 3 :(得分:0)