我正在编写一个程序,将我的一些书面诗歌显示到JTextArea
中,每当我按JButton
“下一步”时,它都应该将我的另一首诗歌读入JTextArea
中。 。
但是,只有在删除filearray
并仅读取单个文件时,我才能这样做。
每次单击下一步时,创建一个文件数组并尝试通过调用number++
进行迭代。我还删除了一些不相关的代码,以消除烦恼。
public class PoemWindow extends JFrame implements ActionListener
{
private int n=0;
BufferedReader br;
JTextArea textAreaOne;
FileReader file[];
}
public PoemWindow() throws IOException{
file[0] = new FileReader("C:/Poems/Freedom.txt");
file[1] = new FileReader("C:/Poems/Masturbation.txt");
file[2] = new FileReader("C:/Poems/Life.txt");
file[3] = new FileReader("C:/Poems/Loneliness.txt");
add(textAreaOne)
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==nextButton) {
while(n<=4) {
try {
br = new BufferedReader(file[n]);
textAreaOne.read(br,null);
n++;
textAreaOne.requestFocus();
} catch(Exception b) {
System.out.println("This is an error");
}
}
}
当我读取单个文件但实例化文件[]
时,它可以工作
它给了我NullPointerException
,甚至无法运行...
答案 0 :(得分:1)
当我读取一个文件但实例化一个文件时,它起作用 []它给了我NullPointerException,它甚至不会运行...
下面是创建带有五个插槽(0-> 4)的数组的示例:
FileReader[] file = new FileReader[4];