从其他 class 读取文件

Reading file from other class

为了作业,我创建了文本文件

并为测试定义了 main class

public static void main(String[] args)
{
    File input1 = new File("inputFile1.txt");
    File input2 = new File("inputFile2.txt");

    CalcCheck file1 = new CalcCheck(input1);
    CalcCheck file2 = new CalcCheck(input2);

    file1.CheckStart();
}

在我定义了main之后class,

我定义了其他class

private File checkingFile;

CalcCheck (File files)
{
    checkingFile = files;
}

void CheckStart()
{
    Scanner sc = new Scanner (checkingFile);
    System.out.println("checking start");
    checkFileNull();
} ...

However, the Scanner sc = new Scanner (checkingFile) 抛出

FileNotFoundException

谁能告诉我这是什么问题?

Scan 的构造函数抛出 FileNotFoundException。这实际上是一个已检查的异常,您需要用 try ... catch ...

包围代码

例如:

void CheckStart()
{
    Scanner sc;
    try {
        sc = new Scanner (checkingFile);
    } catch (FileNotFoundException e){
        e.printStackTrace();
    }
    System.out.println("checking start");
    checkFileNull();
}

或者需要在调用构造函数的方法中声明异常。 例如:

void CheckStart() throws FileNotFoundException
{
    Scanner sc = new Scanner (checkingFile);
    System.out.println("checking start");
    checkFileNull();
}

有关详细信息,请参阅 this post