Почему не работает мой BufferedReader? Я пытаюсь прочитать текстовый файл с помощью BufferedReader, но каждый раз, когда я запускаю программу, она говорит, что в моей строке появляется ошибка:
BufferedReader br = new BufferedReader(new FileReader("playerinfo.txt"));
Я все еще учусь и не могу понять, что не так с моим BufferedReader. Я пытаюсь заставить его читать текстовый файл статистики игроков, а затем выводить файл. Я сделал текстовый файл для чтения, но ошибка все равно появляется каждый раз, когда я пытаюсь запустить мою программу. Я пытался найти похожие вопросы к моему, но, кажется, есть несколько способов сделать BufferedReader, и я думаю, что мой выглядит так, как будто он должен работать. Я не могу найти другие части в моем коде, которые кажутся неправильными , но я все еще довольно новый. Любая помощь по этой проблеме высоко ценится.
Вот как я пытаюсь это реализовать:
import java.util.*;
import java.io.*;
class Player { //Base class
String name;
float weight;
int age;
Player() {
}
;
Player(String name, float weight, int age) {
this.name = name;
this.weight = weight;
this.age = age;
}
}
class Defensive extends Player {
int tackles, interceptions;
float sacks;
Defensive() {
super();
}
Defensive(String name, float weight, int age, int tackles, int interceptions, float sacks) {
super(name, weight, age);
this.tackles = tackles;
this.interceptions = interceptions;
this.sacks = sacks;
}
public String toString() {
return "name : " + name + ", weight : " + weight + ", age : " + age + ", tackles : " + tackles + ", sacks : " + sacks + ", interceptions : " + interceptions + "\n";
}
}
class Football { //main class
public Defensive readDefensive(BufferedReader br) throws IOException {
String name = br.readLine();
float weight = Float.parseFloat(br.readLine());
int age = Integer.parseInt(br.readLine());
int tackles = Integer.parseInt(br.readLine());
float sacks = Float.parseFloat(br.readLine());
int interceptions = Integer.parseInt(br.readLine());
return (new Defensive(name, weight, age, tackles, interceptions, sacks));
}
public static void main(String[] args) throws IOException {
Football football = new Football();
BufferedReader br = new BufferedReader(new FileReader("playerinfo.txt"));
String line = br.readLine();
Defensive defensive = new Defensive();
ArrayList al = new ArrayList();
while (line != null) {
if (line.equals("defensive")) {
defensive = football.readDefensive(br);
al.add(defensive);
}
line = br.readLine();
}
System.out.println(al);
}
}