最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android解析JSON數(shù)據(jù)的方法分析

 更新時(shí)間:2016年06月23日 11:09:50   作者:hbiao68  
這篇文章主要介紹了Android解析JSON數(shù)據(jù)的方法,結(jié)合實(shí)例形式演示了Android解析json格式數(shù)據(jù)的原理與相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了Android解析JSON數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:

JSON作為一種“輕量”的數(shù)據(jù)結(jié)構(gòu)傳遞數(shù)據(jù),在JS中有廣泛的應(yīng)用

Google公司對(duì)JSON的解析提供了gson.jar這個(gè)包,它不依賴于其他任何JAR包;自從Android3.0中已經(jīng)合入了該解析器的功能,但之前的版本是沒有的。

findViewById(R.id.parseBtn).setOnClickListener(new OnClickListener(){
  @Override
  public void onClick(View v) {
    jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";
    MainActivity.parseJson(jsonData);
  }
});
public static void parseJson(String jsonStr){
  //如果要解析JSON數(shù)據(jù),首先要有一個(gè)JsonReader對(duì)象
  JsonReader jsonReader = new JsonReader(new StringReader(jsonStr));
  try {
  //開始遍歷數(shù)組(多個(gè)JSON對(duì)象)
    jsonReader.beginArray();
    while(jsonReader.hasNext()){
    //開始遍歷JSON對(duì)象(含有多個(gè)屬性)
      jsonReader.beginObject();
      while(jsonReader.hasNext()){
        String tagName = jsonReader.nextName();
        if(tagName.equals("name")){
          System.out.println("name --> " + jsonReader.nextString());
        }else if(tagName.equals("age")){
          System.out.println("age --> " + jsonReader.nextString());
        }
      }
    //遍歷JSON對(duì)象結(jié)束
      jsonReader.endObject();
    }
    //遍歷數(shù)組結(jié)束
    jsonReader.endArray();
  } catch (IOException e) {
    e.printStackTrace();
  }
}

將JSON格式轉(zhuǎn)換為類的步驟如下:

//先定義一個(gè)類
public class User {
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
}
//只將一組數(shù)據(jù)轉(zhuǎn)換的方法
findViewById(R.id.parseObj).setOnClickListener(new OnClickListener(){
  @Override
  public void onClick(View v) {
    String jsonData = "{\"name\":\"Michael\",\"age\":20}";
    Gson gson = new Gson();
    User user = gson.fromJson(jsonData, User.class);
    System.out.println("name--->" + user.getName());
    System.out.println("age---->" + user.getAge());
  }
});
//將多組數(shù)據(jù)轉(zhuǎn)換的方法
findViewById(R.id.parseObjs).setOnClickListener(new OnClickListener(){
  @Override
  public void onClick(View v) {
    String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";
    Type listType = new TypeToken<LinkedList<User>>(){}.getType();
    Gson gson = new Gson();
    LinkedList<User> users = gson.fromJson(jsonData, listType);
    for (Iterator iterator = users.iterator(); iterator.hasNext();) {
      User user = (User) iterator.next();
      System.out.println("name--->" + user.getName());
      System.out.println("age---->" + user.getAge());
    }
  }
});

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android開發(fā)入門與進(jìn)階教程》、《Android資源操作技巧匯總》、《Android視圖View技巧總結(jié)》及《Android控件用法總結(jié)

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 淺析Android位置權(quán)限以及數(shù)組尋找索引的坑

    淺析Android位置權(quán)限以及數(shù)組尋找索引的坑

    這篇文章給大家分享了Android位置權(quán)限以及數(shù)組尋找索引的坑的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友可以參考學(xué)習(xí)下。
    2018-07-07
  • Android實(shí)現(xiàn)多點(diǎn)觸控,自由縮放圖片的實(shí)例代碼

    Android實(shí)現(xiàn)多點(diǎn)觸控,自由縮放圖片的實(shí)例代碼

    本篇文章主要介紹了Android實(shí)現(xiàn)多點(diǎn)觸控,自由縮放圖片的實(shí)例代碼,可以自由地對(duì)圖片進(jìn)行縮放和移動(dòng),非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2016-12-12
  • android仿iphone主題效果的主菜單

    android仿iphone主題效果的主菜單

    這篇文章主要為大家詳細(xì)介紹了android仿iphone主題效果的主菜單,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • android仿360加速球?qū)崿F(xiàn)內(nèi)存釋放

    android仿360加速球?qū)崿F(xiàn)內(nèi)存釋放

    本篇文章實(shí)現(xiàn)了Android仿360加速球?qū)崿F(xiàn)內(nèi)存釋放,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • android WebView組件使用總結(jié)

    android WebView組件使用總結(jié)

    瀏覽器控件是每個(gè)開發(fā)環(huán)境都具備的,這為馬甲神功提供了用武之地,windows的有webbrowser,android和ios都有webview;本篇主要介紹android的webview之強(qiáng)大,感興趣的朋友可以研究下
    2012-12-12
  • Android開發(fā)學(xué)習(xí)路線圖

    Android開發(fā)學(xué)習(xí)路線圖

    這篇文章主要介紹了Android開發(fā)學(xué)習(xí)路線圖,本文從基礎(chǔ)、入門、進(jìn)階、高級(jí)等4個(gè)方面鋪開學(xué)習(xí)路線圖,需要的朋友可以參考下
    2015-04-04
  • 詳談android 6.0 fuse文件系統(tǒng)的掛載和卸載問題

    詳談android 6.0 fuse文件系統(tǒng)的掛載和卸載問題

    今天小編就為大家分享一篇詳談android 6.0 fuse文件系統(tǒng)的掛載和卸載問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • Android數(shù)據(jù)持久化之讀寫SD卡中內(nèi)容的方法詳解

    Android數(shù)據(jù)持久化之讀寫SD卡中內(nèi)容的方法詳解

    這篇文章主要介紹了Android數(shù)據(jù)持久化之讀寫SD卡中內(nèi)容的方法,結(jié)合具體實(shí)例形式分析了Android持久化操作中針對(duì)SD卡進(jìn)行讀寫操作的相關(guān)實(shí)現(xiàn)技巧與注意事項(xiàng),需要的朋友可以參考下
    2017-05-05
  • Android 啟動(dòng)模式詳細(xì)介紹

    Android 啟動(dòng)模式詳細(xì)介紹

    這篇文章主要介紹了Android 啟動(dòng)模式詳細(xì)介紹的相關(guān)資料,Activity一共有以下四種launchMode啟動(dòng)模式,這里一一做詳解,需要的朋友可以參考下
    2016-12-12
  • Android Shader著色器/渲染器的用法解析

    Android Shader著色器/渲染器的用法解析

    這篇文章主要介紹了Android Shader著色器/渲染器的用法解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04

最新評(píng)論

洪江市| 泸西县| 宁海县| 慈溪市| 宁化县| 元氏县| 沂源县| 安新县| 双流县| 南投市| 长白| 海安县| 沁阳市| 高青县| 台前县| 宜春市| 武平县| 拜城县| 长武县| 哈尔滨市| 云浮市| 佛冈县| 泌阳县| 松阳县| 彭泽县| 万全县| 甘泉县| 龙川县| 安丘市| 舞钢市| 德清县| 赤峰市| 福海县| 自贡市| 淮南市| 城固县| 古田县| 当雄县| 龙南县| 金昌市| 眉山市|