Gson解析复杂JSON对象

例如以下格式JSON:

建立对应的Java对象,注意内部类要定义成静态的

public class HResult {

    public String total;
    public String records;
    public String page;

    public List<HCell> rows;

    static class HCell{
        public List<String> cell;
        public String id;
    }

}

使用Gson进行解析

public static void main(String[] args) {
        String json = "{\"total\":\"1\",\"rows\":[{\"cell\":[\"c1\",\"c2\",\"没有检索到相关历史信息,请点击[我要留言]\",\"c4\",\"c5\",\"c6\",\"c7\"],\"id\":\"999999999999999999999999999999\"}],\"records\":\"0\",\"page\":\"1\"}";

        Gson gson = new Gson();

        HResult hResult = gson.fromJson(json, new TypeToken<HResult>(){}.getType());

        System.out.println("total:"+hResult.total);
        System.out.println("records:"+hResult.records);
        System.out.println("page:"+hResult.page);

        List<HResult.HCell> list = hResult.rows;
        for(HResult.HCell row:list){
            System.out.println("cell:"+row.cell);
            System.out.println("id:"+row.id);
        }
    }

运行结果:

run:
total:1
records:0
page:1
cell:[c1, c2, 没有检索到相关历史信息,请点击[我要留言], c4, c5, c6, c7]
id:999999999999999999999999999999
成功构建 (总时间: 0 秒)
时间: 2024-10-07 07:44:27

Gson解析复杂JSON对象的相关文章

Android Gson解析复杂Json

JSON原数据 {"total":1,"rows":[{"ID":1,"Title":"台州初级中学招收初一年级体育特长生的通告","Content":"","Type":"01","ReceiveUserName":"蔡婧怡","IsRead":0,"Sen

利用GSON解析简单Json字符串

之前一直使用fastjson来解析json串,性能高,上手快,简单易学不错的! 最新听说fastjson爆出一个安全漏洞,只能寻找新的json库替代,就找到了gson,google开发的一款解析json的库, 平时工作中,复杂的json串解析用不太多,一般就是最基本的json串 用gson解析简单json串的示例如下: String jsonString = "{\"uid\":\"189024\", \"region\":\"

VBScript把json字符串解析成json对象的2个方法

这篇文章主要介绍了VBScript把json字符串解析成json对象的2个方法,本文通过MSScriptControl.ScriptControl和jscript实现,需要的朋友可以参考下 asp/vbscript将json字符解析为json对象的方法,如果asp使用jscript来编写服务器端代码操作json字符串就简单了,vbscript需要MSScriptControl.ScriptControl或者服务器端的jscript来作为中间体才行. vbscript将json字符解析为json对

关于json解析中 解析多重json对象

JSONObject rst = {"AIS-RST":"AIS-00000001","AIS-STATUS":"AIS-000000","RECORD":[{"0|5a4ed8721b71eeb4011b78184c6708bd":{"ANUM":"74","ATOTAL":"6","ISCHEC

Gson解析复杂JSON字符串的两种方式

JSON解析可以使用的库: JSONObject(源自Android官方). Gson(源自Google). Jackson(第三方开源库). FastJSON(第三方开源库). 本文例子使用Google提供的Gson. 什么是JavaBean JavaBean实际上是一种特殊的Java类,是一种规范,经常用于封装数据.JavaBean遵循如下编程原则: 1.必须有一个public无参构造函数: 2.所有属性私有化private: 3.私有化的属性必须通过public的getter和setter

Gson解析纯Json数组

[ { "type": "123", "value": 123 }, { "type": "234", "value": 234 } ] import java.lang.reflect.Type; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.google.g

使用jQuery POST提交数据返回的JSON是字符串不能解析为JSON对象

post请求原代码: $.post( "/User/Home/Code", { Phone: $( "#phone").val() }, function (data) { //data是object类型 //alert(data.isSend); if (data.isSend == "1") { alert( "短信验证码发送成功!" ); } else { alert( "短信验证码发送失败!" );

jQuery将字符串解析成json对象

环境 jquery 地址: http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js 浏览器版本: chrome 41.0.2272.118 m 问题: 使用了$.post 提交数据后,获取返回的json数据,将其中的某一单元输出到页面. function (json, state) { var str = eval("(" + json + ")"); var obj = jQuery.parseJSON(str)

通过Gson解析Json数据

Json是一种数据格式,便于数据传输.存储.交换:Gson是一种组件库,可以把java对象数据转换成json数据格式. gson.jar的下载地址:http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22gson%22 一.Json数据样式 为了便于理解我们先来看看Json的数据样式: 1. 单个数据对象 { "id": 100, "body": "It is my post", "numbe