Как я могу добавить элементы внутри HashMap и сохранить его? [Android] - PullRequest
0 голосов
/ 12 июля 2020

Я новичок в HashMap, как я могу постоянно сохранять и добавлять другие элементы при повторном открытии приложения?

Например:

 private HashMap<String, Recognition> registered = new HashMap<>();
  public void register(String name, Recognition rec) {
  registered.put(name, rec);

}

Я могу увидеть все зарегистрированные внутри элементы, используя:

for (Map.Entry<String, Recognition> entry : registered.entrySet()) {
    final String name = entry.getKey();
    ... }

Но когда я закрываю и снова открываю приложение, я не вижу все объекты, сохраненные внутри зарегистрированных. Я вижу много людей, использующих SharedPreferences, но я не знаю, как добавлять элементы в предварительно сохраненную хэш-карту.

1 Ответ

1 голос
/ 12 июля 2020

Вы можете сделать это косвенно так:

//writing into file
SharedPreferences sharedPref = getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString( key, hashmap.getValue() );
editor.commit();

//reading from file
SharedPreferences pref = getPreferences(Context.MODE_PRIVATE);
for( i = 0;i < size;i++) )
   pref.getString( i , defaultValue );
...