2016-10-13 7 views
0

現在、ユーザー名とパスワードを異なる共有設定ファイルに保存しています。私はXMLファイルに保存されたすべての値を読み込みます。これはどう書かれますか?あなたがそれを行うことができ複数の値をロードする共有設定

+0

'SharedPreferences.getAll()'はそれですか? – nandsito

+0

ファイルをコピーするには:http://stackoverflow.com/a/25585711/1815624 – CrandellWS

答えて

0

一つの方法は以下の通りです:

//if you are running the code inside from an Activity 
Context context = this; 
SharedPreferences userSharedPrefs = context.getSharedPreferences("USER_NAME_PREFS", MODE_PRIVATE); 
SharedPreferences pwdSharedPrefs = context.getSharedPreferences("PWD_PREFS", MODE_PRIVATE); 

方法のgetAll()辞書のように動作しHashMapと呼ばれるデータ構造を返します。そこに格納されている各について

ユニークキーです。

追記:あなたはちょっと、このデータ構造の目的を壊している一度にすべてを取得することではなくのは

Map<String, String> userNameHashMap = (Map<String, String>)userSharedPrefs.getAll(); 
    Map<String, String> pwdHashMap = (Map<String, String>)pwdSharedPrefs.getAll(); 

を継続させ、その後、あなたが彼らと一緒に好きな

をリストにしたいですすることができます?

List<String> userNameList = new LinkedList<>(); 
    userNameList.addAll(userNameHashMap.values()); 

は、ユーザーJohnのパスワードがあるかどうかを知りたい?(私はあなたのユーザー名が道によって文字列であると仮定していますか)

boolean johnHasPasswd = pwdHashMap.containsKey("john"); 
    String johnsPass; 

    if(johnHasPasswd) 
     johnsPass = pwdHashMap.get("john"); 
+0

@ Ferr0283あなたの問題を解決できましたか?私はこの答えが正しいとマークする必要があると信じて、これが助けられたかどうかを教えてください) – HenriqueMS

関連する問題