Android入門 二十二 解析JSON

2021-09-08 11:43:10 字數 1216 閱讀 6951

解析json的方式有很多,主要有官方提供的 jsonobject,谷歌的開源庫 gson。另外,一些第三方的開源庫如 jackson、fastjson等也非常不錯。

假設json資料為:

[,

,]

一、jsonobject

try 

} catch (exception e)

首先是將伺服器返回的資料傳入到了乙個 jsonarray物件中。然後迴圈遍歷這個 jsonarray,從中取出的每乙個元素都是乙個 jsonobject 物件,每個 jsonobject 物件中又會包含 id、name 和version這些資料。接下來只需要呼叫 getstring()方法將這些資料取出,並列印出來即可。

二、使用gson

它主要就是可以將一段json格式的字串自動對映成乙個物件,比如說一段 json格式的資料如下所示:

那我們就可以定義乙個 person類,並加入 name和 age這兩個字段,然後只需簡單地呼叫如下**就可以將 json資料自動解析成乙個 person物件了:

gson gson = new gson();

person person = gson.fromjson(jsondata, person.class);

如果需要解析的是一段 json陣列會稍微麻煩一點,我們需要借助 typetoken將期望解析成的資料型別傳入到 fromjson()方法中,如下所示:

listpeople = gson.fromjson(jsondata, new typetoken>()

{}.gettype());

private string id;

private string name;

private string version;

public string getid() 

public void setid(string id) 

public string getname() 

public void setname(string name) 

public string getversion() 

public void setversion(string version) }

解析:

gson gson = new gson();

}

二十二,雜感

恩,二十二了,感覺是個turning point。二十二是中國男公民法定結婚年齡,但是因為我連女朋友都沒有,所以,這個話題暫不談論。其實剛到上海的時候,就準備把那些將要發生的辛酸點滴記錄下來,可是不知怎麼的,真正到辛酸的時候,卻不想去記憶了。那些歷程確實值得懷念,但是想起來就感覺不好,或許這就是所謂...

二十二 封裝

namespace demo7 this.age age this public int getage public void stuinfo 年齡為 方式一 public int age 方式二 private int age 字段 內部 public int age 讀取許可權 set 預設屬性...

HTML 頭部(二十二)

頭元素包含關於文件的概要資訊,也稱為元資訊 meta information meta 意為 關於某方面的資訊 可以這麼說,元資料 meta data 是關於資料的資訊,而元資訊是關於資訊的資訊。頭元素內的元素不會被瀏覽器顯示出來。根據 html 標準,僅有幾個標籤在 html 的頭部分是合法的。它...