我创建了一个带有 3 个按钮和 1 个文本字段的小程序供用户输入。程序所做的是,它从用户那里获取输入并将其存储到一个数组列表中,然后当第二个按钮被按下时,它应该将数组列表写入文件。当第三个按钮被按下时,它应该从文件中读入一个数组列表。
我的问题是只得到第一条记录,这意味着如果我输入 2 个名字,当我按下第三个按钮时,我只会显示第一个名字。这是我所做的:
贴花 2 个数组列表。
ArrayList<Person>list=new ArrayList<Person>() ArrayList<Person>list2=new ArrayList<Person>();
按下时接受用户输入的按钮
String firstname=txtname.getText();
Person p1=new Person(firstname,"pamodya","15","08","1995");
list.add(p1);
将第一个 arraylist 对象写入文件的按钮。尝试{
FileOutputStream write=new FileOutputStream("hello.txt");
ObjectOutputStream writeFile=new ObjectOutputStream(write);
writeFile.writeObject(list);
writeFile.flush();
writeFile.close();
}catch(Exception e){e.getMessage();}
从文件中读取并在按下时打印到文本区域的按钮。
try{
FileInputStream read=new FileInputStream("hello.txt");
ObjectInputStream readFile=new ObjectInputStream(read);
Person p1=(Person)readFile.readObject();
list2.add(p1);
readFile.close();
txtarea.setText(p1.getName());
}catch(Exception e){e.getMessage();}
这里似乎有什么问题?感谢您的时间。
编辑 :
这是错误