2016-12-10 87 views
0

我是Android新手。我想在共享首選項中保存JSON數組。如何在SharedPreferences中保存JSON數組?

這是我的Java代碼:

while (managedCursor.moveToNext()) 
{ 
    JSONObject jsonObject = new JSONObject(); 
    try 
    { 
     jsonObject.put("number", number); 
     jsonObject.put("type", type); 
     jsonObject.put("fDate", fDate); 
     jsonObject.put("duration", duration); 
    } 
    catch (Exception e) 
    { 
     e.printStackTrace(); 
    } 
    jsonArray.put(jsonObject); 
} 
managedCursor.close(); 
Log.d("array", jsonArray.toString()); 
+0

轉換JSON轉換回JSON一個字符串sharedpreference

preferences.edit().putString(SOME_SHARED_PREF_KEY,jsonobject.toString()).commit(); 

,並在SharedPreference保存爲一個字符串值 – rafid059

+0

我想保存json數組,然後發佈到mysql服務器 –

+0

你甚至讀過我發佈的鏈接嗎? – rafid059

回答

1

首先,我會使用Gson從Java對象轉換JSON到/,則可以使用類似下面的SharedPreferences存儲。

public void storeMyData(MyPojo myPojo) { 
    preferences.edit().putString(SOME_SHARED_PREF_KEY, gson.toJson(myPojo)).commit(); 
} 

轉換JSON字符串並保存到從sharedPreference讀通過

String string = preferences.getString(SOME_SHARED_PREF_KEY, null); 
JsonObject jsonObject = new JsonObject(string);