必要に応じて値を保持しているオブジェクトがありますArrayList
。
今、私はそれをFILEとして保存するか、ARRAYに変換して保存したい..
私の配列リストは次のようなものです: String
SharedPreferences
JSON
ArrayList<Struct_Saved_Domains> arraylist = new ArrayList<Struct_Saved_Domains>();
これどうやってするの?何か案が??
Gsonを使用してオブジェクトを文字列に変換し、共有設定に保存できます。
SharedPreferences prefs = context.getSharedPreferences("prefName", Context.MODE_PRIVATE);
Editor editor = prefs.edit();
editor.putStringSet("myList", new Gson().toJson(arraylist).toString());
editor.apply();
以下のコードを共有設定に使用できます。
public class WebService {
String PREF_NAME = "PREF_NAME";
public static SharedPreferences sp;
Editor spEdit;
public String UserID;
public String Password;
public LoginWebService(Context ctx) {
// TODO Auto-geneated constructor stub
sp = ctx.getSharedPreferences(PREF_NAME, 0);
spEdit = sp.edit();
}
public void setUserID(String UserID) {
spEdit.putString("UserID", UserID);
spEdit.commit();
}
public String getUserID() {
return sp.getString("UserID", "");
}
public String getPassword() {
return sp.getString("Password", "");
}
public void setPassword(String Password) {
spEdit.putString("Password", Password);
spEdit.commit();
}
public void clear(){
spEdit.clear();
spEdit.commit();
}
}
共有設定にデータを保存する際に、以下のように使用できます。
WebService objlogin=new WebService(context);
objlogin.clear();
for (int i = 0; i <arraylist.size(); i++)
{
objlogin.setUserID(arraylist.get(i).something);
objlogin.setPassword(arraylist.get(i).something);
}
次に、すべてのデータがシャード設定に保存されます。
これがあなたを助けることを願っています。