How to remove some key contain a string from SharedPreferences?

Viewed 2394

My Android SharedPreferences is:

key,value

jhon,usa

xxxpeter,uk

luis,mex

xxxangel,ital

dupont,fran

xxxcharles,belg

...

more lines with xxxname

...

How can I delete key/value what contain (or start) with xxx in key. This is what I got so far:

public void Deletekeyxxx() {
    final SharedPreferences.Editor sped = sharedPreferences.edit();     
    if(sped.contains("xxx")){
      sped.remove(sped.contains("xxx"));
    }
    sped.commit();
 }

Works! Thank you Ben P.

public void Deletekeyxxx() { 
    final SharedPreferences.Editor sharedPrefsEditor = sharedPreferences.edit();

    Map<String, ?> allEntries = sharedPreferences.getAll();
    for (Map.Entry<String, ?> entry : allEntries.entrySet()) {
        String key = entry.getKey();
        if (key.contains("xxx")) {
           sharedPrefsEditor.remove(key);
        }
      sharedPrefsEditor.commit();
    }
}
3 Answers
Related