【发布时间】:2017-08-10 17:54:21
【问题描述】:
我的 Android SharedPreferences 是:
键,值
约翰,美国
xxxpeter,英国
路易斯,墨西哥
xxxangel,斜体
杜邦,弗兰
xxxcharles,比利时
...
更多带有 xxxname 的行
...
如何删除键中包含(或以 xxx 开头)的键/值。这是我到目前为止得到的:
public void Deletekeyxxx() {
final SharedPreferences.Editor sped = sharedPreferences.edit();
if(sped.contains("xxx")){
sped.remove(sped.contains("xxx"));
}
sped.commit();
}
有效!谢谢本 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();
}
}
【问题讨论】:
-
保持简单,遍历首选项中所有存在的键,如果它包含/以您的搜索键开始则删除
标签: android key sharedpreferences