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

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

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

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

JSON作為一種“輕量”的數(shù)據(jù)結構傳遞數(shù)據(jù),在JS中有廣泛的應用

Google公司對JSON的解析提供了gson.jar這個包,它不依賴于其他任何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ù),首先要有一個JsonReader對象
  JsonReader jsonReader = new JsonReader(new StringReader(jsonStr));
  try {
  //開始遍歷數(shù)組(多個JSON對象)
    jsonReader.beginArray();
    while(jsonReader.hasNext()){
    //開始遍歷JSON對象(含有多個屬性)
      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對象結束
      jsonReader.endObject();
    }
    //遍歷數(shù)組結束
    jsonReader.endArray();
  } catch (IOException e) {
    e.printStackTrace();
  }
}

將JSON格式轉換為類的步驟如下:

//先定義一個類
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ù)轉換的方法
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ù)轉換的方法
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());
    }
  }
});

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

希望本文所述對大家Android程序設計有所幫助。

相關文章

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

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

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

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

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

    android仿iphone主題效果的主菜單

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

    android仿360加速球實現(xiàn)內存釋放

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

    android WebView組件使用總結

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

    Android開發(fā)學習路線圖

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

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

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

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

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

    Android 啟動模式詳細介紹

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

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

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

最新評論

伊川县| 新建县| 镇原县| 宜宾市| 沽源县| 安顺市| 胶州市| 通山县| 衡东县| 海阳市| 日喀则市| 铜陵市| 旅游| 广元市| 明溪县| 商丘市| 峨眉山市| 四子王旗| 体育| 江北区| 安义县| 霞浦县| 海丰县| 金坛市| 郴州市| 合水县| 揭西县| 蓬莱市| 麻阳| 霸州市| 石台县| 固镇县| 上思县| 肇东市| 栖霞市| 乳源| 江北区| 江川县| 延吉市| 汾西县| 安图县|