我有一个需要保存的JSON数组。我当时正在考虑对其进行序列化,但是最好将它另存为SharedPreferences中的字符串,然后在需要读入它时对其进行重建?
Java中的JSON对象无法立即实现可序列化。我已经看到其他人扩展了该类以允许这样做,但是对于您的情况,我只建议将JSON对象存储为字符串并使用其toString()函数。我已经成功了。
editor.putString("jsondata", jobj.toString());
并找回它:
String strJson = sharedPref.getString("jsondata","0");//second parameter is necessary ie.,Value to return if this preference does not exist. if (strJson != null) { try { JSONObject response = new JSONObject(strJson); } catch (JSONException e) { } }
http://developer.android.com/reference/org/json/JSONObject.html#JSONObject(java.lang.String)