这是我的工作代码,它读取 TXT 文件并将其显示在控制台中:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.swing.DefaultListModel;
import javax.swing.JList;
public class LeerArchivoDeTexto {
public static void main(String[] args) {
File archivo = new File("Archivo.txt");
BufferedReader lector = null;
DefaultListModel lista = new DefaultListModel();
JList jList1 = new JList();
try {
lector = new BufferedReader(new FileReader(archivo));
String texto = null;
while ((texto = lector.readLine()) != null) {
lista.addElement(texto);
System.out.println(texto);
}
jList1.setModel(lista);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (lector != null) {
lector.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
问题是我想将 TXT 文件中的数据加载到 JList
中。涉及 JList
的注释行不起作用。有什么想法吗?
最佳答案
JList
未实例化,因为您显式将其设置为 null:
JList JList1 = null; // not initialized
因此,当尝试将模型设置为它时,我假设您在这一行收到 NullPointerException
:
JList1.setModel(lista); // NPE here
您需要实例化 JList
并为其设置模型,如下所示:
JList jList1 = new JList();
jList1.setModel(lista);
关于java - 无法从 TXT 文件填充 JList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5941103/