Попытка добавить элементы в jList из TXT-файла
У меня есть следующий блок try catch, который выполняется по нажатию кнопки.
try {
//picking up the file I want to read in
BufferedReader in = new BufferedReader(new FileReader("C:\\users\\me\\desktop\\blah.txt"));
String line;
try {
//read through the file until there is nothing left and add each line to list
while((line = in.readLine()) != null){
jList1.add(line, jList1);
}
} catch (IOException ex) {
Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
}
} catch (FileNotFoundException ex) {
Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
}
Я могу успешно System.out.println(line)
так что я знаю, что что-то работает правильно. Я не могу заполнить список строками из текстового файла. Приведенный выше код говорит мне, что я cannot add containers parent to self.
Попытка найти больше информации только смутила меня. Я сталкивался с некоторыми местами, которые говорят, что jLists более сложны, чем это?
2 ответа
Решение
Есть много ошибок, слишком много, чтобы комментировать все из них:
2) Исключения
4) Примеры
BufferedReader in = null;
String line;
DefaultListModel listModel = new DefaultListModel();
try {
in = new BufferedReader(new FileReader("C:\\users\\me\\desktop\\blah.txt"));
while ((line = in.readLine()) != null) {
listModel.addElement(line); //(String.valueof(line));
}
} catch (IOException ex) {
Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
} finally {
if (in != null) {
in.close();
}
}
JList jList1 = new JList(listModel);
Вы действительно не можете сделать это: Прочитайте еще раз эту строку: jList1.add(line, jList1);
Что ты на самом деле имел ввиду? Вы добавляете jList1 в jList1, верно? Проверьте код и исправьте его соответствующим образом.