浅谈json的封装和解析

2015-08-09 13:43 评论 0 条

第一种json数据的封装格式:

{

"data":{"Java":"Java开发","Android":"Android程序设计"},

"header":{"name":"飞腾博客","address":"https://www.teachcourse.cn"}

}

public StringEntity getEntity(){

JSONObject dataParams=new JSONObject();

dataParams.put("Java","Java开发");

dataParams.put("Android","Java程序设计");

 

JSONObject headerParams=new JSONObject();

headerParams.put("name","飞腾博客");

headerParams.put("address","https://www.teachcourse.cn");

 

JSONObject params=new JSONObject();

params.put("data",dataParams);

params.put("header",headerParams);

 

StringEntity entity=new StringEntity(params.toString());

return entity;

 

}

 

第二种json数据的封装格式:

{

"data":[{"Java":"Java开发","Android":"Android程序设计"}],

"header":[{"name":"飞腾博客","address":"https://www.teachcourse.cn"}]

}

public StringEntity getEntity(){

JSONArray dataArray=new JSONArray();

JSONObject dataParams=new JSONObject();

dataParams.put("Java","Java开发");

dataParams.put("Android","Java程序设计");

dataArray.put("data",dataParams);

 

JSONArray headerArray=new JSONArray();

JSONObject headerParams=new JSONObject();

headerParams.put("name","飞腾博客");

headerParams.put("address","https://www.teachcourse.cn");

headerArray("header",headerParams);

 

JSONObject params=new JSONObject();

params.put("data",dataArray);

params.put("header",headerArray);

 

StringEntity entity=new StringEntity(params.toString());

return entity;

 

}

 

接收服务器端返回来的数据,解析json数据

String jsonString=getStringByInputStream(InputStream is);

JSONObject json=new JSONObject(jsonString);

JSONObject data=json.getJSONObject("data");

String java=data.optString("Java");

String android=data.optString("Android");

 

private static String getStringByInputStream(InputStream is) {
  StringBuilder sb = new StringBuilder();
  try {
    BufferedReader reader = new BufferedReader(new InputStreamReader(
     is, "UTF-8"), 8 * 1024);

   String line = null;
   while ((line = reader.readLine()) != null) {
    sb.append(line + "n");
   }
  } catch (IOException e) {
   sb.delete(0, sb.length());
  } finally {
   try {
    is.close();
   } catch (IOException e) {
    
   }
  }

  return sb.toString();
   }

 

当前文章价值2.37元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://www.teachcourse.cn/292.html ,谢谢支持!

资源分享

分类:Android 标签:
TreeMap方法解析 TreeMap方法解析
Android开发之ScrollView控件Demo演示 Android开发之ScrollView控件
ubuntu中使用virtualenv创建虚拟环境示例 ubuntu中使用virtualenv创建虚拟
Android项目结构与分析源码,其中的秘密,你知道吗? Android项目结构与分析源码,其

发表评论

呲牙 憨笑 坏笑 偷笑 色 微笑 抓狂 睡觉 酷 流汗 鼓掌 大哭 可怜 疑问 晕 惊讶 得意 尴尬 发怒 奋斗 衰 骷髅 啤酒 吃饭 礼物 强 弱 握手 OK NO 勾引 拳头 差劲 爱你

表情