こんにちは、既存のファイルに新しいオブジェクトを追加しようとすると問題が発生します.Androidアプリが再び起動したら、既存のファイルを取得して新しいオブジェクトを追加し、既存のファイルからオブジェクトを読み取ります...実際には、オブジェクトを読み取ろうとすると、コードは最初のオブジェクトのみを読み取ります..コードの下にあります..助けていただけますか? ありがとう
次のメソッドを使用してオブジェクトを書き込みます。
public void saveObject(Person p, File f){
try
{
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(f, true));
oos.writeObject(p);
oos.reset();
oos.flush();
oos.close();
}
catch(Exception ex)
{
Log.v("Serialization Save Error : ",ex.getMessage());
ex.printStackTrace();
}
}
次のメソッドを使用してオブジェクトを読み取ります。
public Object loadSerializedObject(File f)
{
try {
ObjectInputStream ois = new ObjectInputStream(new FileInputStream(f));
try{
Object loadedObj = null;
while ((loadedObj = ois.readObject()) != null) {
Log.w(this.getClass().getName(), "ReadingObjects") ;
}
return objects;
}finally{
ois.close();
}
} catch (StreamCorruptedException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return null;
}