服务器端返回的json数据的解析

服务器端返回的json数据格式如下

{

"resp":

{

"appVOList":

[

{

"msAppId":52,

"appName":"软件市场15",

"appImgUrl":"http://192.168.1.100:8080/html5/eoeMarket2_align_v_200_icon.png",

"appTJZS":0

},

{

"msAppId":45,

"appName":"软件市场1",

"appImgUrl":"111",

"appTJZS":0

},

{

"msAppId":29,

"appName":"软件市场4",

"appImgUrl":"111",

"appTJZS":0

}

],

"page":

{

"pageIndex":0,

"pageSize":15,

"pageSum":1,

"rowCount":6

},

"infoText":"成功!",

"infoCode":"0000"

}

}[size=xx-small][/size]

解析:

/**

*分析服务器回传的json格式的数据,

*把解析后的数据放到List中

*/

List<ContentValues>jsonList=newArrayList<ContentValues>();

@Override

publicvoidreadJSONObject(JSONObjectjsonObject)throwsException{

if(Log.LOGV)Log.d(TAG,"前:"+jsonObject.toString());

jsonObject=(JSONObject)jsonObject.get("resp");

if(Log.LOGV)Log.d(TAG,"后:"+jsonObject.toString());

if(Log.LOGV)Log.d(TAG,"———————服务器返回的searchresult的json—————————");

readJsonResult(jsonObject);

readJsonPage(jsonObject);

}

/**

*解析搜索结果数据

*@paramjsonObj

*/

privatevoidreadJsonResult(JSONObjectjsonObj){

if(Log.LOGV)Log.d(TAG,"********result*********");

if(Log.LOGV)Log.d(TAG,jsonObj.toString());

try{

if(jsonObj.has("appVOList")){

JSONArrayjsonArray=jsonObj.getJSONArray("appVOList");

if(jsonArray.length()>0){

for(inti=0;i<jsonArray.length();i++){

JSONObjectjsonOj=jsonArray.getJSONObject(i);

intappId=-1;

StringappImgUrl="";

Stringappname="";

StringappAuthor="";

intappRate=-1;

if(jsonOj.has("msAppId")){

appId=jsonOj.getInt("msAppId");

}

if(jsonOj.has("appImgUrl")){

appImgUrl=jsonOj.getString("appImgUrl");

}

if(jsonOj.has("appName")){

appName=jsonOj.getString("appName");

}

if(jsonOj.has("appAuthor")){

appAuthor=jsonOj.getString("appAuthor");

}

if(jsonOj.has("appTJZS")){

appRate=jsonOj.getInt("appTJZS");

}

ContentValuesvalues=newContentValues();

values.put(SearchResultMeta.APP_ID,appId);

values.put(SearchResultMeta.APP_IMG_URL,appImgUrl);

values.put(SearchResultMeta.APP_NAME,appName);

values.put(SearchResultMeta.APP_AUTHOR,appAuthor);

values.put(SearchResultMeta.APP_RATE,appRate);

jsonList.add(values);

if(Log.LOGV)Log.d(TAG,"SearchResultJson>>>"+"msAppid="+appId+"appname="+appName

+"appAuthor="+appAuthor+"appRate="+appRate);

}

}else{

if(Log.LOGV)Log.d(TAG,"服务器端无返回数据");

}

}

}catch(Exceptione){

e.printStackTrace();

}

}

/**

*解析分页信息数据

*@paramjsonObj

*/

privatevoidreadJsonPage(JSONObjectjsonObj){

if(Log.LOGV)Log.d(TAG,"********page*********");

if(Log.LOGV)Log.d(TAG,jsonObj.toString());

try{

if(jsonObj.has("page")){

JSONObjectjobj=jsonObj.getJSONObject("page");

if(jobj.has("rowCount")){

rowCount=jobj.getInt("rowCount");

Log.d(TAG,"rowCount="+rowCount);

}

}

}catch(Exceptione){

e.printStackTrace();

}

}[color=black][/color]

相关推荐