Я создал конструктор, который принимает имя файла .txt и печатает данные в нем как ArrayList.NullPointerException при чтении текстового файла
public class rrr {
private String filename;
public rrr(String afilename){
afilename=filename;
}
public void readdtata() throws IOException {
FileReader p1=new FileReader(filename);
BufferedReader p2=new BufferedReader(p1);
ArrayList<String> data=new ArrayList<String>();
String line;
while((line=p2.readLine()) != null){
data.add(line);
}
p2.close();
for(int i=0;i<data.size();i++){
System.out.println(data.get(i));
}
}
}
при попытке проверить это я получаю эти ошибки Исключение в потоке «главный» java.lang.NullPointerException
at java.io.FileInputStream.<init>(FileInputStream.java:116)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at java.io.FileReader.<init>(FileReader.java:41)
at rrr.readdtata(rrr.java:14)
at testin.main(testin.java:17)
кто-нибудь есть идея о том, как решить эту проблему, пожалуйста.
Вам нужно будет узнать общие понятия о том, как отладить NPE (NullPointerException). ** Вы должны критически прочитать стек стека исключения, чтобы найти строку с кодом в вине, строку, которая выдает исключение, а затем тщательно проверить эту строку **, узнать, какая переменная имеет значение null, а затем вернуться в свой код, чтобы увидеть Зачем. Поверьте мне, вы столкнетесь с ними снова и снова. –
Обратите внимание, что название вопроса неверно, поскольку вы фактически не делаете чтение файла ни в одном конструкторе. –