Java: ошибка сериализации массива при десериализации и поиске объектовJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java: ошибка сериализации массива при десериализации и поиске объектов

Сообщение Anonymous »

Мой проект посвящен системе управления библиотекой.
Мне нужно хранить данные в объектах класса, а затем сохранять их в arraylist.
Затем я сериализую данные.
У меня есть эти функции:
  • addBook( );
    -Десериализовать список массивов
    -Выполнить операции
    -Сериализация списка массивов
  • deleteBook();
    -Десериализация списка массивов
    -выполнение операций
    -Сериализация списка массивов
  • modifyBok();
    -Десериализовать список массивов
    -Выполнить операции
    -Сериализовать список массивов
  • IssueBook();
    -Десериализовать список массивов
    -выполнить операции
    -сериализовать список массивов
  • returnBook();
    -десериализовать список массивов
    -выполнить операции
    -Сериализация списка массивов
Мой 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 bookData = null;

try {
fis = new FileInputStream("Database.ser");
ois = new ObjectInputStream(fis);
bookData = (ArrayList) ois.readObject();

}catch(Exception e){
System.out.println("Exception Caught: "+e);
}

Я получил исключение, потому что BufferedReader должен быть временным, и это было исправлено. Но теперь
Я думаю, что моя сериализация не работает. и каждый раз, когда я создаю книгу, я сохраняю ее индекс (номер объекта) в текстовом файле.
Ни один из моих методов поиска не работает: обнаружено исключение ArrayIndexOutOfBounds. Я пытался сделать размер +1 для списка массивов
но это тоже не работает.

Код: Выделить всё

My code for searching. Before this the deserialization code is there.

try{
System.out.println("_________________Search Book_________________");
System.out.println("Enter Title of Book to Search: ");
String title = scan.readLine();
for(int i=0;i

Подробнее здесь: [url]https://stackoverflow.com/questions/52758279/java-arraylist-serialization-error-while-deserializing-and-searching-for-object[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»