2012-05-20 21 views

risposta

13

Prima di tutto l'oggetto deve implementare Serializable. Non dimenticare di aggiungere un serialVersionUID alla classe serializzabile.

Quindi, se non si desidera salvare il campo specifico dell'oggetto, contrassegnarlo come transient. Assicurarsi che tutti i campi siano serializzabili.

Quindi, creare un file nella memoria interna e creare un oggetto ObjectOutputStream per salvare l'oggetto. Se si desidera salvare in una cartella specifica è possibile creare un percorso come questo:

File path=new File(getFilesDir(),"myobjects"); 
path.mkdir(); 

quindi è possibile utilizzare il percorso per salvare il vostro oggetto:

File filePath =new File(path, "filename"); 
FileOutputStream fos = new FileOutputStream(filePath); 
ObjectOutputStream oos = new ObjectOutputStream(fos);    

oos.writeObject(object); 
oos.close(); 

La lettura è simile:

FileInputStream fis = new FileInputStream(file); 
ObjectInputStream in = new ObjectInputStream(fis);    

MyObjectClass myObject = (MyObjectClass) in.readObject(); 

in.close(); 
Problemi correlati