Почему мой 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);
}
}
так в чем же ошибка?
Моя ошибка гласит:
Исключение в потоке "main" java.io.FileNotFoundException: playerinfo.txt (система не может найти указанный файл)
Попробуйте указать полный путь к файлу.




Ваш класс Football, содержащий основной метод, должен быть объявлен как public class.
Также вам следует рассмотреть возможность использования списков универсальных шаблонов, поскольку ваша реализация прямо сейчас выдает предупреждения.
Используйте List<Defensive> defensives = new ArrayList<>();
Java для Javascript - это то же самое, что Pain для Painting или Ham для Hampster. Они совершенно разные. Настоятельно рекомендуется, чтобы начинающие программисты попытались выучить название языка, на котором они пытаются писать код. Когда вы публикуете вопрос, пожалуйста, пометьте его соответствующим образом.