Leer una ArrayList desde el almacenamiento interno
Tengo una aplicación para Android y me gustaría leer y escribir unArrayList<MyClass>
al almacenamiento interno.
La parte de escritura funciona (creo, aún no la he probado :-)):
ArrayList<MyClass> aList;
public void saveToInternalStorage() {
try {
FileOutputStream fos = ctx.openFileOutput(STORAGE_FILENAME, Context.MODE_PRIVATE);
fos.write(aList.toString().getBytes());
fos.close();
}
catch (Exception e) {
Log.e("InternalStorage", e.getMessage());
}
}
Pero lo que quiero hacer ahora es leer el ArrayList completo desde el almacenamiento y devolverlo como un ArrayList así:
public ArrayList<MyClass> readFromInternalStorage() {
ArrayList<MyClass> toReturn;
FileInputStream fis;
try {
fis = ctx.openFileInput(STORAGE_FILENAME);
//read in the ArrayList
toReturn = whatever is read in...
fis.close();
} catch (FileNotFoundException e) {
Log.e("InternalStorage", e.getMessage());
} catch (IOException e) {
Log.e("InternalStorage", e.getMessage());
}
return toReturn
}
Nunca he leído en un archivo con Android antes, así que no sé si esto es posible. Pero hay una manera que puedo leer en mi costumbreArrayList
?