我的项目是关于图书馆管理系统的。我必须将数据存储到类的对象中,然后将它们存储到 arraylist 中。 然后我正在序列化数据。
我有这些功能:
添加书籍();- 反序列化数组列表 - 执行操作 - 序列化数组列表
删除书();- 反序列化数组列表 - 执行操作 - 序列化数组列表
修改Bok(); - 反序列化数组列表 - 执行操作 - 序列化数组列表
问题书(); - 反序列化数组列表 - 执行操作 - 序列化数组列表
返回书();- 反序列化数组列表 - 执行操作 - 序列化数组列表
我的 ArrayList: public static ArrayList bookData = new ArrayList();
我用来序列化的代码:
FileOutputStream fos = null;
ObjectOutputStream oos = null;
try {
fos = new FileOutputStream("Database.ser");
oos = new ObjectOutputStream(fos);
oos.flush();
oos.writeObject(bookData);
oos.close();
fos.close();
}catch(Exception e){
System.out.println("Exception Caught: "+e);
}
我用来反序列化的代码:
FileInputStream fis = null;
ObjectInputStream ois = null;
//ArrayList<Books> bookData = null;
try {
fis = new FileInputStream("Database.ser");
ois = new ObjectInputStream(fis);
bookData = (ArrayList<Library>) ois.readObject();
}catch(Exception e){
System.out.println("Exception Caught: "+e);
}
我收到了一个异常,因为 BufferedReader 需要是瞬态的,并且已修复。但是现在,我认为我的序列化不起作用。每次我创建一本书时,我都会将它的索引(对象编号)存储在一个文本文件中。我的搜索技术都不起作用:捕获了 ArrayIndexOutOfBounds 异常。我试图做数组列表的大小+1,但这也不起作用。
呼唤远方
相关分类