Android利用Gson解析嵌套多層的Json的簡單方法
首先先講一個比較簡單點的例子(最簡單的我就不講啦,網(wǎng)上很多),幫助新手理解Gson的使用方法:
比如我們要解析一個下面這種的Json:
String json = {"a":"100",
"b":[{"b1":"b_value1","b2":"b_value2"},
{"b1":"b_value1","b2":"b_value2"}],
"c":{"c1":"c_value1","c2":"c_value2"}}
首先我們需要定義一個序列化的Bean,這里采用內(nèi)部類的形式,看起來會比較清晰一些:
public class JsonBean {
public String a;
public List<B> b;
public C c;
public static class B {
public String b1;
public String b2;
}
public static class C {
public String c1;
public String c2;
}
}
很多時候大家都是不知道這個Bean是該怎么定義,這里面需要注意幾點:
1、內(nèi)部嵌套的類必須是static的,要不然解析會出錯;
2、類里面的屬性名必須跟Json字段里面的Key是一模一樣的;
3、內(nèi)部嵌套的用[]括起來的部分是一個List,所以定義為 public List<B> b,而只用{}嵌套的就定義為 public C c,
具體的大家對照J(rèn)son字符串看看就明白了,不明白的我們可以互相交流,本人也是開發(fā)新手!
Gson gson = new Gson();
java.lang.reflect.Type type = new TypeToken<JsonBean>() {}.getType();
JsonBean jsonBean = gson.fromJson(json, type);
然后想拿數(shù)據(jù)就很簡單啦,直接在jsonBean里面取就可以了!
如果需要解析的Json嵌套了很多層,同樣可以可以定義一個嵌套很多層內(nèi)部類的Bean,需要細(xì)心的對照J(rèn)son字段來定義哦。
以上這篇Android利用Gson解析嵌套多層的Json的簡單方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
android基于ListView和CheckBox實現(xiàn)多選和全選記錄的功能
本篇文章主要介紹了android基于ListView和CheckBox實現(xiàn)多選和全選記錄的功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-11-11
Android開發(fā)之HttpClient異步請求數(shù)據(jù)的方法詳解【附demo源碼下載】
這篇文章主要介紹了Android開發(fā)之HttpClient異步請求數(shù)據(jù)的方法,結(jié)合實例形式較為詳細(xì)的分析了Android HttpClient異步請求數(shù)據(jù)的相關(guān)操作技巧,并附帶完整demo源碼供讀者下載參考,需要的朋友可以參考下2017-11-11
android實現(xiàn)程序自動升級到安裝示例分享(下載android程序安裝包)
這篇文章主要介紹了android實現(xiàn)下載android程序安裝包自動升級的示例,大家參考使用吧2014-01-01
Android編程實現(xiàn)canvas繪制柱狀統(tǒng)計圖功能【自動計算寬高及分度值、可左右滑動】
這篇文章主要介紹了Android編程實現(xiàn)canvas繪制柱狀統(tǒng)計圖功能,具備自動計算寬高及分度值及左右滑動的功能,涉及Android canvas繪圖操作相關(guān)技巧,需要的朋友可以參考下2017-01-01
Android中Toolbar隨著ScrollView滑動透明度漸變效果實現(xiàn)
這篇文章主要介紹了Android中Toolbar隨著ScrollView滑動透明度漸變效果實現(xiàn),非常不錯,具有參考借鑒價值,需要的的朋友參考下2017-01-01

