在网络上找的一些经典的例子复习使用

一,解析嵌套json字符串,一个json字符串中嵌套另一个json字符串

{
"msg": {
"resCode": "0000",
"attrName": "sensorData",    "result": {
  "food1": 0,
  "water": 0,
  "food2": 106,
  "humidity": "152.42",
  "temprature": "103.65"
}
}
}

我要获取的是嵌套在msg里的result中的所有数据。

先用msg和result分别创建bean类,把Result作为msg的其中一个变量

public class SensorBean implements Serializable {

private Result result;

private int resCode;

private String attrName;
public Result getResult() {
return result;
} public void setResult(Result result) {
this.result = result;
} public int getResCode() {
return resCode;
} public void setResCode(int resCode) {
this.resCode = resCode;
} public String getAttrName() {
return attrName;
} public void setAttrName(String attrName) {
this.attrName = attrName;
}
@Override
public String toString() {
return "Msg{" +
"result=" + result.toString() +
", resCode=" + resCode +
", attrName='" + attrName + '\'' +
'}';
} }

两个类都继承序列化

public class Result implements Serializable{

/**
* food1 : 0
* water : 0
* food2 : 106
* humidity : 152.42
* temprature : 103.65
*/ private int food1;
private int water;
private int food2;
private String humidity;
private String temprature; public int getFood1() {
return food1;
} public void setFood1(int food1) {
this.food1 = food1;
} public int getWater() {
return water;
} public void setWater(int water) {
this.water = water;
} public String getTemprature() {
return temprature;
} public void setTemprature(String temprature) {
this.temprature = temprature;
} @Override
public String toString() {
return "Result{" +
"food1=" + food1 +
", water='" + water +
", temprature=" + temprature+ '\''+
'}';
}
}

然后在获取到数据的地方进行Gson解析

Gson gson = new Gson();
SensorBean sensorBean = gson.fromJson(data.getString("msg"), SensorBean.class);
Result result = sensorBean.getResult();
L.d(TAG, "result.bean = " + result.toString());

二.加上数组的json嵌套

{
"error": "0",
"data": [
{
"name": "1",
"value": [
{
"name": "2",
"value": "3"
},
{
"name": "4",
"value": "5"
}
]
},
{
"name": "6",
"value": [
{
"name": "7",
"value": "8"
},
{
"name": "9",
"value": "10"
}
]
}
]
}
import java.util.ArrayList;

public class JsonBean {
private Error error;
//data 是个数组
private ArrayList data;
public Error getError(){
return error;
}
public void setError(Error error){
this.error = error ;
} public ArrayList getData(){
return data;
}
public void setData(ArrayList data){
this.data = data;
} public static class Bean2 {
public String name;
public ArrayList value; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public ArrayList getValue() {
return value;
} public void setValue(ArrayList value) {
this.value = value;
} @Override
public String toString() {
return "Bean2 [name=" + name + ", value=" + value + "]";
} } public static class Bean3 {
public String name;
private String value; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getValue() {
return value;
} public void setValue(String value) {
this.value = value;
} @Override
public String toString() {
return "Bean3 [name=" + name + ", value=" + value + "]";
} }
} }

复习解析嵌套json的更多相关文章

  1. 【golang】json数据解析 - 嵌套json解析

    @ 目录 1. 通过结构体映射解析 2. 嵌套json解析-map 1. 通过结构体映射解析 原数据结构 解析 // 结构体 type contractJson struct { Data []tra ...

  2. QT解析嵌套JSON表达式

    QT5开发环境集成了解析JSON表达式的库.使用很方便. 友情提示一下,好像在QT4环境里.须要到官网下载相关的库文件才干使用解析功能.话不多说,上代码 1.在pro文件里增加 QT += scrip ...

  3. 解析嵌套json字符串,一个json字符串中嵌套另一个json字符串

    我现在有一个字符串是这样: { "msg": { ", "attrName": "sensorData", "trans ...

  4. .net 解析嵌套JSON

    JSON格式文件如下:我们是要取出msgJsoncontent里面GeneralReportInfo下serviceData中的totalUseValue数据 { ", "mess ...

  5. Android利用Gson解析嵌套多层的Json

    参考:http://www.cnblogs.com/jxgxy/p/3677256.html 比如我们要解析一个下面这种的Json: String json = {"a":&quo ...

  6. C# 解析嵌套的json文件.

    概述 今天我同学问我如何转换json文件,没处理过,网上搜了一下,json转excel的很少,反过来倒是有许多人写了工具. json文件的结构大致是这样的: {, , }, , "type& ...

  7. 【Java_Spring】java解析多层嵌套json字符串

    java解析多层嵌套json字符串    

  8. 复杂json解析(json里面嵌套json)

    调用第三方接口,返回一堆json,我只想取得里面的某一个属性,但是返回的比较复杂,无法直接拿到属性,格式类似于这样: {"video":{"id":" ...

  9. 利用FastJson,拼接复杂嵌套json数据&&直接从json字符串中(不依赖实体类)解析出键值对

    1.拼接复杂嵌套json FastJson工具包中有两主要的类: JSONObject和JSONArray ,前者表示json对象,后者表示json数组.他们两者都能添加Object类型的对象,但是J ...

随机推荐

  1. Cesium官方教程12--材质(Fabric)

    原文地址:https://github.com/AnalyticalGraphicsInc/cesium/wiki/Fabric 介绍 Fabric 是Cesium中基于JSON格式来描述materi ...

  2. C++和C#之间的数据类型对应关系

    最近接触WINAPI比较多,一直要楂数据类型间的对应关系,所姒就转载一下~ # Windows Data Type .NET Data Type # BOOL, BOOLEAN Boolean or ...

  3. HTML编码的用户输入------阻止向Controller的方法传入参数时用链接注入javascript代码或者HTML标记

  4. 08-background详解

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. PKUWC 2018 真实排名

    PKUWC2018 真实排名 题面描述 共有\(n\)个人,每个人有一个能力值,每个人的排名为所有能力值不比他小的人的个数(包括他自己). 现在有\(k\)个人能力值翻倍,但我们无法得知是哪\(k\) ...

  6. 跟我一起在Win10中用VMware安装Ubuntu

    VMware下安装Ubuntu 打开VMware,创建虚拟机: 点击运行虚拟机,报错为 解决办法为 大功告成,我们已经在Win10中用VMware安装Ubuntu了

  7. php循环语句(二)

    for 循环 for 循环用于您预先知道脚本需要运行的次数的情况. 语法 for (初始值; 条件; 增量) { 要执行的代码; } 参数: 初始值:主要是初始化一个变量值,用于设置一个计数器(但可以 ...

  8. c语言学习笔记 - 顺序查找和哨兵查找比较

    今天学习C时用到了顺序查找和哨兵查找,做了一个比较,主要是学习下哨兵查找法 例如在一个数组里查找一个元素,没找到返回-1,找到了则返回这个数组的下标也就是键值. 用循序查找法: void arr_se ...

  9. MYSQL中使用事务的案例

    基本介绍 事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml语句要么全部成功,要么全部失败.如:网上转账就是典型的要用事务来处理,用以保证数据的一致性. 关键词 start tran ...

  10. react高阶函数组件

    Layout as a Higher Order Component // components/MyLayout.js import Header from './Header'; const la ...