2011-02-10 14 views

答えて

5

どうもありがとうございましたが、同じことは、共有設定の技術を使用して行うことができます。 共有設定にデータを追加し、既に存在するかどうかを確認するコードを以下に示します。

SharedPreferences preferences = getSharedPreferences(
       PREF_FILE_NAME, MODE_PRIVATE); 
     if (value.equals("")) { 

      boolean storedPreference = preferences.contains(key); 
      if (storedPreference) { 
       SharedPreferences.Editor editor = preferences.edit(); 
       editor.remove(key); // value to store 
       Log.d("KEY",key); 
       editor.commit(); 
      } 
     }else{ 

      SharedPreferences.Editor editor = preferences.edit(); 
      editor.putString(key, value); // value to store 
      Log.d("KEY",key); 
      editor.commit(); 
     } 

その後、我々は

SharedPreferences preferences = getSharedPreferences(
       PREF_FILE_NAME, MODE_PRIVATE); 
     Map<String, String> map = (Map<String, String>) preferences.getAll(); 
     if(!map.isEmpty()){ 
      Iterator<Entry<String, String>> iterator = map.entrySet().iterator(); 
      while(iterator.hasNext()){ 
       Map.Entry pairs = (Map.Entry)iterator.next(); 
        pairs.getKey()+pairs.getValue(); 
          //write code here 
      } 
     } 
を使用してアクセスすることができます
1

シリアライズして共有設定またはファイルに保存します。これを行うことができるかどうかは、当然のことながら、マッピングされるデータ型に依存します。 (あなたはビューをシリアル化しようとする場合、これは、例えば、動作しません。)

7

を再起動する前に、あなたのハッシュマップのオブジェクトをシリアル化し、再起動後に、それをデシリアライズ...ここ

シリアル化するためのサンプルコード..です

public void serializeMap(HashMap<String,String> hm) { 
    try { 
     FileOutputStream fStream = openFileOutput(namefile.bin, Context.MODE_PRIVATE) ; 
     ObjectOutputStream oStream = new ObjectOutputStream(fStream); 

     oStream.writeObject(hm);   
     oStream.flush(); 
     oStream.close(); 

     Log.v("Serialization success", "Success"); 
    } catch (Exception e) { 
     Log.v("IO Exception", e.getMessage()); 
    } 
} 

あなたは同様にそれをデシリアライズすることによって、それを読むことができます....
おかげで....

関連する問題