当前位置:首页 > PHP教程 > php高级应用 > 列表

Android中的JSONObject和JSONArray解析json数据

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-05 09:59:10 浏览: 评论:0 

今天介绍一下关于json数据解析,我们使用Android中的JSONObject和JSONArray解析json数据,有android开发的朋友可以参考一下.

  1. String strJson = "{"students":[{"name":"Jack","age":12}, {"name":"Vista","age":23}, {"name":"Kaka","age":22}, {"name":"Hony","age":31}]}"; 
  2.         try { 
  3.             JSONObject jo = new JSONObject(strJson); 
  4.             JSONArray jsonArray = (JSONArray) jo.get("students"); 
  5.             for (int i = 0; i < jsonArray.length(); ++i) { 
  6.                 JSONObject o = (JSONObject) jsonArray.get(i); 
  7.                 System.out.println("name:" + o.getString("name") + "," + "age:" 
  8.                         + o.getInt("age")); 
  9.             } 
  10.         } catch (JSONException e) { 
  11.             e.printStackTrace(); 
  12.         } 
  13.  
  14.  
  15.  
  16. 2.使用gson中的JsonReader解析json数据 
  17.  
  18. try { 
  19.             String string = "{"class":1, "students":[{"name":"jack", "age":21},{"name":"kaka", "age":21},{"name":"lucy", "age":21}]}"; 
  20.             StringReader sr = new StringReader(string); 
  21.             JsonReader jr = new JsonReader(sr); 
  22.             jr.beginObject(); 
  23.             if (jr.nextName().contains("class")) { 
  24.                 System.out.println("班级: " + jr.nextString()); 
  25.                 if (jr.nextName().equals("students")) { 
  26.                     jr.beginArray(); 
  27.                     while (jr.hasNext()) { 
  28.                         jr.beginObject(); 
  29.                         if (jr.nextName().equals("name")) 
  30.                             System.out.print("姓名:" + jr.nextString()); 
  31.                         if (jr.nextName().equals("age")) { 
  32.                             System.out.println(" , 年龄:" + jr.nextInt()); 
  33.                         } 
  34.                         jr.endObject(); 
  35.                     } 
  36.                     jr.endArray(); 
  37.                 } 
  38.             } 
  39.             jr.endObject(); 
  40.         } catch (FileNotFoundException e) { 
  41.             // TODO Auto-generated catch block 
  42.             e.printStackTrace(); 
  43.         } catch (IOException e) { 
  44.             // TODO Auto-generated catch block 
  45.             e.printStackTrace(); 
  46.         } 

Json解析库gson:http://code.google.com/p/google-gson/

Tags: Android JSONObject JSONArray

分享到:

相关文章