2012-09-23 13 views
6

カスタムオブジェクトのarraylistの保存に関する質問があります。カスタムオブジェクトのAndroid保存配列

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; 
} 
} 

私は今、私はそれができるように、デバイスのストレージに満たされたのArrayListを保存したいと呼ばれる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); 

をNotitieのいくつかのオブジェクトを作成し、私のArrayListに追加:私は、クラスと呼ばれるnotitieを持っていますいつでもアクセスできます。私はデータをStringまたは共有プレフィクスのある整数で保存していましたが、このArraylistを保存することはできません。 誰かに解決策がありますか?

ありがとうございます!

答えて

5

あなたは、いくつかのオプションがありません:

  1. 使用のシリアル化、XMLやJSON、およびファイルにデータを格納します。シリアライゼーションを実装する場合は、this solutionを参照してください。

  2. SQLiteを使用してデータを保存します。開始するにはthis tutorialをご覧ください。

EDIT:あなたにもthisを読みたいかもしれません!

+0

なぜ、その場合、第1の方法または第2の方法をお勧めしますか? – Bruiser

+3

@ブルーザー:それは非常に良い質問です。 SQLiteの利点は、CursorAdapterを使用して任意のListViewに要素を直接表示できることです。これにより、大量の作業が節約されます。さらに、カーソルデータを処理すると、カーソルデータを処理するのは簡単です。ファイルを使用して同じことをすると、少し面倒なことがあります。だから、私のためには、SQLiteが行く方法です。 – Swayam

+1

詳細な説明をお寄せいただきありがとうございます。考慮すべきことはたくさんあることを理解していますが、それは間違いなく今後の議論の出発点です。興味のある方はもう少しです:http://stackoverflow.com/questions/12212640/android-performance-flat-file-vs-sqlite | http://stackoverflow.com/questions/1803365/android-data-storage-file-vs-sqlite – Bruiser

関連する問題