Json 生成与解析详解及实例代码
Json生成与解析
JSON常用与服务器进行数据交互,JSON中“{}”表示JSONObject,“[]”表示JSONArray
如下json数据:
1{"singers":[ 2{"id":"02","name":"tom","gender":"男","tel":["123456","789012"]}, 3{"id":"03","name":"jerry","gender":"男","tel":["899999","666666"]}, 4{"id":"04","name":"jim","gender":"男","tel":["7777","5555"]},{"id":"05","name":"lily","gender":"女","tel":["222222","111111"]} 5]}
生成json数据代码:
publicStringbuildJson()throwsJSONException{ JSONObjectpersons=newJSONObject(); JSONArraypersonArr=newJSONArray(); JSONObjectperson=newJSONObject(); person.put("id","02"); person.put("name","tom"); person.put("gender","男"); JSONArraytel=newJSONArray(); tel.put("123456"); tel.put("789012"); person.put("tel",tel); personArr.put(person); JSONObjectperson2=newJSONObject(); person2.put("id","03"); person2.put("name","jerry"); person2.put("gender","男"); JSONArraytel2=newJSONArray(); tel2.put("899999"); tel2.put("666666"); person2.put("tel",tel2); personArr.put(person2); JSONObjectperson3=newJSONObject(); person3.put("id","04"); person3.put("name","jim"); person3.put("gender","男"); JSONArraytel3=newJSONArray(); tel3.put("7777"); tel3.put("5555"); person3.put("tel",tel3); personArr.put(person3); JSONObjectperson4=newJSONObject(); person4.put("id","05"); person4.put("name","lily"); person4.put("gender","女"); JSONArraytel4=newJSONArray(); tel4.put("222222"); tel4.put("111111"); person4.put("tel",tel4); personArr.put(person4); persons.put("singers",personArr); returnpersons.toString(); }
解析json数据代码:
privatevoidparseJsonMulti(StringstrResult){ try{ JSONArrayjsonObjs=newJSONObject(strResult).getJSONArray("singers"); Strings=""; for(inti=0;i<jsonObjs.length();i++){ JSONObjectjsonObj=((JSONObject)jsonObjs.opt(i)); intid=jsonObj.getInt("id"); Stringname=jsonObj.getString("name"); Stringgender=jsonObj.getString("gender"); s+="ID号"+id+",姓名:"+name+",性别:"+gender+",电话:"; JSONArraytel=jsonObj.getJSONArray("tel"); for(intj=0;j<tel.length();j++){ s+=tel.getString(j)+"/"; } s+="\n"; } tv.setText(s); }catch(JSONExceptione){ e.printStackTrace(); } }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!