now im trying to use this
FileOutputStream fos = getContext().openFileOutput(\"CalEvents\", Context.MODE_PRIVATE);
ObjectOutputStream oos = new ObjectOut
Is this what you want to do ?
FileInputStream fis;
try {
fis = openFileInput("CalEvents");
ObjectInputStream ois = new ObjectInputStream(fis);
ArrayList<Object> returnlist = (ArrayList<Object>) ois.readObject();
ois.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
EDIT: Can be simplified:
FileInputStream fis;
try {
fis = openFileInput("CalEvents");
ObjectInputStream ois = new ObjectInputStream(fis);
ArrayList<Object> returnlist = (ArrayList<Object>) ois.readObject();
ois.close();
} catch (Exception e) {
e.printStackTrace();
}
Assuming that you are in a class which extends Context
(like Activity
). If not, then you will have to call the openFileInput()
method on an object which extends Context
.
Use this method to write your Arraylist in a file
public static void write(Context context, Object nameOfClass) {
File directory = new File(context.getFilesDir().getAbsolutePath()
+ File.separator + "serlization");
if (!directory.exists()) {
directory.mkdirs();
}
String filename = "MessgeScreenList.srl";
ObjectOutput out = null;
try {
out = new ObjectOutputStream(new FileOutputStream(directory
+ File.separator + filename));
out.writeObject(nameOfClass);
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
Complete example here, with Read method