欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android编程解析Json格式数据的方法

程序员文章站 2023-12-02 17:45:16
本文实例讲述了android编程解析json格式数据的方法。分享给大家供大家参考,具体如下: package com.practice.json; import...

本文实例讲述了android编程解析json格式数据的方法。分享给大家供大家参考,具体如下:

package com.practice.json;
import org.json.jsonarray;
import org.json.jsonexception;
import org.json.jsonobject;
import android.app.activity;
import android.os.bundle;
import android.util.log;
public class jsondemo extends activity {
 /*
  * 解析json的例子,str保存的是json代码,解析后的数据在logcat里输出 
 */
 string tag = "json message";
 @override
 public void oncreate(bundle savedinstancestate) {
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.main);
  detectjson();
 }
 private void detectjson() {
  string str = "{"+
   "\"日期\" : \"2011-06-06\","+
   //like 是 jsonobject
   "\"like\" : {"+
   "\"name\" : \"加内特\","+
   "\"height\" : \"2.11cm\","+ 
   "\"age\" : 35"+
   "},"+
   //likelist 就是一个 jsonobject
   "\"likelist\":" +
    "{\"list\": " +
    "["+
     //这里也是jsonobject
     "{"+
     "\"name\" : \"rose\","+
     "\"height\" : \"190cm\","+ 
     "\"age\" : 23"+
     "},"+
     //这里也是jsonobject
     "{"+
     "\"name\" : \"科比\","+
     "\"height\" : \"198cm\","+ 
     "\"age\" : 33"+
     "}"+
    "]"+
    "}"+
   "}";
  try {
   jsonobject datajson = new jsonobject(str);
   log.d(tag, datajson.getstring("日期"));
   jsonobject nbajson = datajson.getjsonobject("like");
   log.d(tag, nbajson.getstring("name"));
   log.d(tag, nbajson.getstring("height"));
   log.d(tag, nbajson.get("age").tostring());
   jsonobject listjson = datajson.getjsonobject("likelist");
   jsonarray arrayjson = listjson.getjsonarray("list");
   for(int i=0;i<arrayjson.length();i++) {
    jsonobject tempjson = arrayjson.optjsonobject(i);
    log.d(tag, tempjson.getstring("name"));
    log.d(tag, tempjson.getstring("height"));
    log.d(tag, tempjson.getstring("age").tostring()); 
   }
  } catch (jsonexception e) {
   system.out.println("something wrong...");
   e.printstacktrace();
  }
 }
}

希望本文所述对大家android程序设计有所帮助。