Я создаю интерфейс командной строки, представляющий систему поддержки. Мне нужно использовать файлы .txt в качестве внешней базы данных. Каждое здание бухгалтерского учета должно быть сопоставлено со списком всех книг, хранящихся в этом месте. Я хочу иметь возможность сохранять каждый строительный объект бухгалтерского учета, который сопоставлен со всеми его книгами, в текстовом файле и иметь возможность читать, обновлять, вставлять, удалять один и тот же текстовый файл даже после того, как мое приложение прекратило работу и запустилось еще раз.
public static ArrayList<Object> readObjects(){
ArrayList<Object> al = new ArrayList<Object>();
boolean cont = true;
try {
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("outputFile"));
while(cont){
Object obj=null;
try {
obj = ois.readObject();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
if(obj != null)
al.add(obj);
else
cont = false;
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return al;
моя текущая реализация может только записывать объекты в массиве в новый текстовый файл, но не может обновлять / удалять, когда уже существует существующий текстовый файл с данными из предыдущего сеанса приложения
Возможно даже обновить параметры объектных объектов / удалить целые объекты, которые уже сохранены в текстовом файле, или мне придется восстановить объекты из текстового файла, удалить все из указанного текстового файла, сделать все необходимые обновления, чтобы делать с ранее извлеченными объектами, а затем записывать объекты (и / или новые объекты) обратно в текстовый файл? Спасибо всем!