Я пытаюсь создать небольшую программу на Java, в которой мне нужно сохранить массив объектов в файле. Я искал, как это сделать, и нашел следующий код:
//this is the array that will be stored
private Atributtes list[]=new Atributtes [100];
/*
this is the way i save the data in the array,i always save them in
index 0,and i made a for to put away the previous data because always
there will have data in index 0
*/
for (int i = totalElments; i>0; i--){
list[i] = list[i-1];
}
list[0]=new Atributtes ("Atributtes data");
save.storeInfile(list);
totalElments++;
private static final String filename="file.obj";
public void storeInfile(Object array[]){
try{
FileOutputStream file= new FileOutputStream(filename,true);
ObjectOutputStream object= new ObjectOutputStream(file);
object.writeObject(array);
object.close();
file.close();
System.out.println("recording successfully");
System.out.println("-----------------------------------");
}catch(Exception exceccao){
System.out.println("recording wasn't successfull");
}
}
Моя проблема сейчас заключается в том, что когда я хочу сохранить тот же массив объектов, но с другими данными, или когда я снова открываю файл , первые данные, которые были в файле, перезаписываются.
Примечание 1: мне сказали, что я установил истинное логическое значение в FileoutPutSTream, но когда я его включаю, запись больше не происходит, но когда я удаляю истинное boolean запись происходит, но с перезаписанными данными всегда.
Примечание2: я читал о FileWriter и PrintWriter, но мне нужно писать только объекты, а не Strings.thanks !!!!
Может кто-нибудь сказать, как добавить эти новые данные в файл?
Спасибо.