我正在尝试让它工作,但它在 fileReader 语句中显示错误

i'm trying to get this working but it shows errro at fileReader statement

这是主要的 class,它适用于第一步,当我为下一步输入 1 或 2 时,它给出错误消息“读取文件错误

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

    Scanner sc = new Scanner(System.in);
    System.out.println("1.Fraction Calculator");
    System.out.println("2.Grading Scheme");
    System.out.println("Enter Your Choice:");
    int ip = sc.nextInt();
    String frac1, frac2;
            // creating an object of Fraction class
    Grading grad=new Grading();
    grad.readFile();
    grad.calculateAverage();
    grad.calculateTestAvg();
    // creating an object of Fraction class
    Fraction frac =new Fraction();


    switch(ip){
        case 1: System.out.println("Enter two fractions:");
                //  input of the two fractions
                frac1 = sc.next(); frac2 = sc.next();
                // displaying the result table
                System.out.println("Addition: " + frac.add(frac1, frac2) + "\nSubtraction: " + frac.sub(frac1,frac2) + "\nMultiplication: " + frac.mul(frac1,frac2) + "\nDivision: " + frac.div(frac1, frac2));
                break; 

        case 2: grad.printGrades(); break;

        default : break;
    }
}

你必须 throws FileNotFoundExceptionFileReader 所以你有两个选择:

void Grading() throws FileNotFoundException {
    FileReader fr = new FileReader("score.txt");
    BufferedReader br = new BufferedReader(fr);
}

或使用try{}catch(){}

void Grading() {
    FileReader fr;
    try {
        fr = new FileReader("score.txt");
    } catch (FileNotFoundException ex) {
        //...
    }
    BufferedReader br = new BufferedReader(fr);
}

编辑

别忘了导入这个库:

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;

因为你没有处理java.io.FileNotFoundException, 您可以抛出该异常或使用 try catch 块来处理它

抛出异常

 void Grading()throws FileNotFoundException{
    FileReader fr = new FileReader("score.txt");
    BufferedReader br = new BufferedReader(fr);
}

试一试

  void Grading(){

    FileReader fr = null;
    try {
        fr = new FileReader("score.txt");
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
    BufferedReader br = new BufferedReader(fr);
}