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

Android json数据解析详解及实例代码

程序员文章站 2023-12-17 20:18:10
 android json数据解析详解 移动开发经常要与服务器数据交互,也常使用json数据格式,那就说说android json解析。 1.最简单jso...

 android json数据解析详解

移动开发经常要与服务器数据交互,也常使用json数据格式,那就说说android json解析。

1.最简单json格式解析如下:

         //解析json 
ry {   
jsontokener jsonparser = new jsontokener(strresult);  
jsonobject jsonobj = (jsonobject) jsonparser.nextvalue();  
string strsportstitle = jsonobj.getstring("sportstitle");  
  int nid= jsonobj.getint("id");                 
 } catch (jsonexception e) {   
   system.out.println("json parse error");   
   e.printstacktrace();   
}  

字符串strresult就是需要解析json数据了。用过json数据格式都知道,json数据格式是一个键对应一个值。你可以先打印出原始数据strresult,就知道jsonobj.getstring("sportstitle");这双引号里面键是什么。 

2.数组形式json数据解析如下:

try { 
    jsonarray jsonarray = new jsonarray(strresult); 
    for (int i = 0; i < jsonarray.length(); i++) { 
      jsonobject jsonobj = jsonarray.optjsonobject(i); 
      id[i] = jsonobj.getint("id"); 
      time[i] = jsonobj.getstring("time"); 
      users[i] = jsonobj.getstring("users"); 
      roomtitle[i] = jsonobj.getstring("roomtitle"); 
    } 
  } catch (jsonexception e) { 
    system.out.println("jsons parse error !"); 
    e.printstacktrace(); 
  } 

3.json里面嵌套json数据解析如下:

              try { 
  jsonarray jsonarray = new jsonarray(strresult); 
  for (int i = 0; i < jsonarray.length(); i++) { 
    jsonobject jsonobj = jsonarray.optjsonobject(i); 
    string strachievement = jsonobj.getstring("achievement"); 
      string strmember = jsonobj.getstring("member"); 
 
    try { 
      jsontokener jsonparser1 = new jsontokener( 
          achievement); 
      jsonobject jsonobj1 = (jsonobject) jsonparser1 
          .nextvalue(); 
      nametype[i] = jsonobj1.getstring("name"); 
      type[i] = jsonobj1.getstring("type"); 
 
    } catch (jsonexception e) { 
      system.out.println("json parse error"); 
      e.printstacktrace(); 
    } 
  } 
} catch (jsonexception e) { 
  system.out.println("json parse error"); 
  e.printstacktrace(); 
}  

嵌套json数据,其实都是一样的。多解析一次而已。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

上一篇:

下一篇: