android 序列化 json,android 读取json 为什么不直接反序列化
我們平時寫的bean類,這個是指定規則的序列化對象,虛擬機認得,你說用json反序列化獲取對象,這個規則是后臺定的,虛擬機如何認得?
而且你說的,很多人一直遍歷json字符串,然后一個字段一個字段的封裝,超級麻煩,我也不知道他們為什么這么做?不管是解析成object對象還是list數據,我都有自己封裝的工具,就兩三行代碼.
如下:
private static Gson sGson;
public static Gson getGson() {
if (null == sGson) {
sGson = new Gson();
}
return sGson;
}
/**
* 將json字符串轉換成一個對象
*
* @param jsonStr json字符串
* @param field 字段名
* @param clazz 字節碼
* @param 類型
* @return
*/
public static T getObject(String jsonStr, String field, Class clazz) {
JSONObject jsonObject = getJSONObject(jsonStr);
T t = getGson().fromJson(jsonObject.optString(field), clazz);
return t;
}
/**
* 將json字符串轉換成list數據
*
* @param json
* @param clazz
* @param
* @return
*/
public static List getList(String json, Class clazz) {
List list = null;
list = JSON.parseArray(json, clazz);
return list;
}
/**
* 將json字符串轉換成jsonObject
*
* @param jsonStr
* @return
*/
public static JSONObject getJSONObject(String jsonStr) {
JSONObject mJson = new JSONObject();
try {
mJson = new JSONObject(jsonStr);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mJson;
}
這個是我個人的理解,也沒有權威的認證過.
總結
以上是生活随笔為你收集整理的android 序列化 json,android 读取json 为什么不直接反序列化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 代码签名apk,[And
- 下一篇: 搜狗搜索浏览器极速版(搜狗高速浏览器)