android中json数据解析详解

原创 2015年11月21日 09:37:10

需要解析的json数据如下:

{

    "head": {                        //这是一个JSONObject,里面存放需要的相关信息


        "code": "0",               //这是一个键值对,里面存放需要的值(主要取里面的值来使用)


    },
    "body": {                      //这同样是一个JSONObject,里面存放需要的相关信息
        "List": [                    //这是一个JSONArray
            {
                "测试数据": "测试数据"   //这是一个键值对,里面存放需要的值(主要取里面的值来使用)
            },
            {
                "测试数据": "测试数据"   //这是一个键值对,里面存放需要的值(主要取里面的值来使用)
            }
        ]
    }

}

下面用解析上面的json数据:

HttpPost httpRequestLogin = new HttpPost(url); //url是请求json数据的地址

try {

// 发出HTTP request

httpRequestLogin.setEntity(new StringEntity(jsonObjectLogin.toString(), HTTP.UTF_8));   //jsonObjectLogin.toString()是发出请求的json数据

// 取得HTTP response

HttpResponse httpResponse1 = new DefaultHttpClient().execute(httpRequestLogin);

  // 若状态码为200 ok

if (httpResponse1.getStatusLine().getStatusCode() == 200) {

// 取出回应字串,返回的所有信息,均存放在该字符串中

String strResultLogin = EntityUtils.toString(httpResponse1.getEntity());

// 整体的数据是个jsonobject对象,将字符串转化成jsonObjectLogin.toString()

JSONObject object = new JSONObject(strResultLogin);

// 取得head的值,值是个JSONObject对象

JSONObject head = object.getJSONObject("head");

String code = head.getString("code");   //在JSONObject类型的head下用getString方法取出,“code”对应的值,放入String中

// 取得body的值,值是个JSONObject对象

JSONObject body = object.getJSONObject("body");

  //在JSONObject类型的body下用getJSONObject方法取出,“List”对应的JSONArray值,放入JSONArray中

JSONArray List = body.getJSONArray("List");

for (int i = 0; i < List.length(); i++) {    //取出JSONArray之后,利用循环逐个出去数组里面的值

JSONObject object2 = List.getJSONObject(i);

String 测试数据 = object2.getString("测试数据");

}else{

}

catch (ClientProtocolException e) {

e.printStackTrace();

catch (UnsupportedEncodingException e) {

e.printStackTrace();

catch (IOException e) {

e.printStackTrace();

catch (JSONException e) {

e.printStackTrace();

}

以上为一般json的解析,在复杂的json,可能也许就是JSONArray里面嵌套JSONArray,那样的话,可以顺着上面的思想,在循环中在嵌套一个循环,逐层取出即可!
版权声明:本文为博主原创文章,未经博主允许不得转载。

Android——JSON数据解析详解

今天我们来一起探讨一些有关android开发开发中遇到的数据解析问题;
  • qingwufeiyang163
  • qingwufeiyang163
  • 2014年11月14日 16:25
  • 305

Android 实现Json数据解析,并进行应用!

从网站上获取数据然后再客户端进行解析是常见的数据交互。下面是常用的一些接口网址: webservice工厂接口 http://www.36wu.com快递查询接口http://webservice.3...
  • Marksinoberg
  • Marksinoberg
  • 2015年11月17日 19:45
  • 10198

Json数据解析详解

定义json是一种轻量级的数据交换格式。语法JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集。 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JS...
  • qq_24729759
  • qq_24729759
  • 2015年06月27日 14:26
  • 225

Android中的JSON数据解析

1.将从服务器获取到的数据封装成一个JSONObject对象 JSONObject json = new JSONObject(result); 2.通过对应的key可以获得到对应的values ...
  • u014365014
  • u014365014
  • 2015年04月07日 16:59
  • 184

Android中简单json数据解析

假设有一段json数据为 {name:\"muyi\",age:3.2,ppt:12}
  • skyblue126
  • skyblue126
  • 2014年11月05日 14:42
  • 137

Android中JSON数据解析

JSON 是JavaScript Object  Notation 的缩写,是一种轻量级的数据交换格式。JSON是一系列键值的组合,JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数...
  • lazy2008
  • lazy2008
  • 2011年11月09日 18:38
  • 2797

Android Json数据解析

1.通过主Activity的Button按钮进行解析 1 public class MainActivity extends Activity { 2 3 private B...
  • chaishen10000
  • chaishen10000
  • 2014年06月30日 17:14
  • 544

android JSON解析数据-解析天气预报

概要笔者近期做到对天气预报JSON数据解析,在此小记。 天气预报接口:http://wthrcdn.etouch.cn/weather_mini?citykey=101200101 JSON数据如...
  • Double2hao
  • Double2hao
  • 2017年03月30日 09:04
  • 1619

Android JSON数据解析

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式。   本文将主要介绍在An...
  • typedef_god
  • typedef_god
  • 2013年12月24日 18:32
  • 612

android json数据解析

此demo实现了json数据的解析,有三种解析方式。 demo:下载地址,gson.jar在libs文件夹中,注意添加。 MainActivity.java: package fk.an...
  • youmingyu
  • youmingyu
  • 2016年10月06日 10:46
  • 158
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android中json数据解析详解
举报原因:
原因补充:

(最多只允许输入30个字)