Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android save array of custom objects

I have a question about saving an arraylist of custom objects. I have a class called notitie:

public class Notitie implements Serializable{

private String titel = "";
private String type = "";
private String datum = "";

public void setTitel (String titel){
    this.titel = titel;
}
public String getTitel(){
    return titel;
}
public void setType (String type){
    this.type = type;
}
public String getType(){
    return type;
}
public void setDatum (String datum){
    this.datum = datum;
}
public String getDatum(){
    return datum;
}
}

I create some objects of Notitie and add them to my arraylist called notities

ArrayList<Notitie> notities = new ArrayList<Notitie>();

Notitie notitie1 = new Notitie();
notitie1.setTitel("Meting");
notitie1.setType("Watermeting");
notitie1.setDatum("22-09-12");
notities.add(notitie1);

Notitie notitie2 = new Notitie();
notitie1.setTitel("Meting2");
notitie1.setType("Watermeting2");
notitie1.setDatum("23-09-12");
notities.add(notitie2);

Notitie notitie3 = new Notitie();
notitie1.setTitel("Meting3");
notitie1.setType("Watermeting3");
notitie1.setDatum("24-09-12");
notities.add(notitie3);

Now I want to save the filled Arraylist on the device's storage so it can be accessed anytime. I used to save data as a String or some Integers with sharedpreferences but I can't save this Arraylist with that. Does anybody have a solution?

Thanks in advance!

like image 943
Simon Avatar asked Sep 23 '12 18:09

Simon


1 Answers

You do have a few options:

  1. Use serialization, XML or JSON, and store your data in a File. Refer to this solution if you wanna implement serialization.

  2. Store you data using SQLite. Have a look at this tutorial to get started.

EDIT : You might want to read this as well!

like image 194
Swayam Avatar answered Sep 17 '22 20:09

Swayam