java如何解析多层json数据

造梦者      2022-02-16     805

关键词:

1. 使用标准的Json对象,如org.json.JSONObject json = new org.json.JSONObject(yourJsonString);然后通过get(keyString)逐个解析 
2. 构造一个类MyObject,根据你提出的问题,其中添加 String name,List<MyObject> child, 两个属性,增加getter setter 方法,通过com.google.gson.Gson进行解析。步骤如下: 
String jsonStr = "{‘name‘:‘111‘,‘child‘:[{‘name‘:‘222‘,‘child‘:[{‘name‘:‘333‘}]},{‘name‘:‘2221‘}]}"; 
Gson gson = new Gson(); 
MyObject obj = gson.fromJson(jsonStr,MyObject.class); 

 1 import java.util.List;
 2 
 3 import com.google.gson.Gson;
 4 
 5 public class MyObject {
 6     String name;
 7     List<MyObject> child;
 8     public String getName() {
 9         return name;
10     }
11     public void setName(String name) {
12         this.name = name;
13     }
14     public List<MyObject> getChild() {
15         return child;
16     }
17     public void setChild(List<MyObject> child) {
18         this.child = child;
19     }
20     
21     public static void main(String[] args) {
22          String jsonStr = "{‘name‘:‘111‘,‘child‘:[{‘name‘:‘222‘,‘child‘:[{‘name‘:‘333‘}]},{‘name‘:‘2221‘}]}";
23          Gson gson = new Gson();
24          MyObject obj = gson.fromJson(jsonStr,MyObject.class);
25          System.out.println(obj.getChild().get(0).getName()); // --222
26          System.out.println(obj.getChild().get(1).getName()); // --222
27          System.out.println(obj.getChild().get(0).getChild().get(0).getName()); // --333
28     }
29 }

引自http://www.iteye.com/problems/88002  flashsnow 的回答,非常感谢

如何解析json中map数据

参考技术Aimportjava.util.ArrayList;importjava.util.HashMap;importjava.util.Iterator;importjava.util.List;importjava.util.Map;importjava.util.Map.Entry;importjava.util.regex.Matcher;importjava.util.regex.Pattern;importorg.json.JSONArray;importorg.json.JSONObject;importorg.json.JSONStringer;import... 查看详情

c#中怎么解析多层json数据

...dressaddr;publicclassaddresspublicstringcity;publicstringprovince;然后在解析的地方这样写:stringjsonData="\"name\":\"lily\",\"age\":23,\"addr\":\"city\":guangzhou,\"province\":g... 查看详情

js解析多层嵌套的json,取出所有父元素属性和遍历所有子元素

已知一个多层嵌套的json,取出所有父元素和子元素的id值思路:因为不知道到底嵌套了多少层,递归有可能造成栈溢出、查询时间特别久的问题所以先查询一次,判断是否有子节点,如果有,取出子节点并到父节点上,并动态更... 查看详情

如何用python解析多层嵌套的json?

近期遇到用Python解析多层嵌套的JSON的困难,通过json.loads转为dict类型后,使用dict['key']来调取value,会提示TypeError:stringindicesmustbeintegersJSON文件如链接:https://api.doctorxiong.club/v1/fund?code=010300,009683,006355,006697JSON的第二层是个二... 查看详情

如何将json数据从json数组解析到recyclerview java android?

】如何将json数据从json数组解析到recyclerviewjavaandroid?【英文标题】:Howtoparsejsondatafromjsonarraytorecyclerviewjavaandroid?【发布时间】:2021-11-1919:58:06【问题描述】:我可以将json数据解析到我的recyclerview。但是当我遇到其中包含数组数... 查看详情

springbootfastjson解析多层嵌套复杂json字符串(代码片段)

1[]中括号代表的是一个数组;2大括号代表的是一个对象3双引号“”表示的是属性值4冒号:代表的是前后之间的关系,冒号前面是属性的名称,后面是属性的值,这个值可以是基本数据类型,也可以是引用... 查看详情

如何从 JSON 数据递归地创建 UL/LI - 多层深度

】如何从JSON数据递归地创建UL/LI-多层深度【英文标题】:HowcanIrecursivelycreateaUL/LI\'sfromJSONdata-multiplelayersdeep【发布时间】:2012-03-1020:54:42【问题描述】:我正在尝试使用以下JSON数据在递归内部函数中创建以下类似结构,但运气不... 查看详情

java怎么解析多层嵌套的json得到每个元素

用Jackson我只会做后面的数组部分"result":"cases":"page":1,"pagesize":10,"totalrows":11,"pages":2,"sort":"-createtime","results":["Id":111111,"No":null,"Name":"case1... 查看详情

如何在 JavaScript 中为 JSON / XML 数据生成 MLM(多层次营销)树

】如何在JavaScript中为JSON/XML数据生成MLM(多层次营销)树【英文标题】:HowtogenerateatreeforMLM(Multi-LevelMarketing)inJavaScriptforeitherJSON/XMLdata【发布时间】:2010-12-1803:24:26【问题描述】:我有一些这样的数据:(在sql服务器)MemberID,Parem... 查看详情

asp.net提取多层嵌套json数据的方法

本文实例讲述了ASP.NET利用第三方类库Newtonsoft.Json提取多层嵌套json数据的方法,具体例子如下。假设需要提取的json字符串如下:{"name":"lily","age":23,"addr":{"city":guangzhou,"province":guangdong}}先引用命名空间:usingNewtonsoft.Json;usingNewtonsoft.... 查看详情

Python-将多层 API JSON 解析为 CSV 的问题

】Python-将多层APIJSON解析为CSV的问题【英文标题】:Python-Issueparsingmulti-layeredAPIJSONintoCSV【发布时间】:2022-01-0113:44:24【问题描述】:我正在尝试解析NIH授权API并遇到了一个复杂的分层问题。在下面的JSON输出中,我已经能够导航... 查看详情

关于json格式字符串解析并用mybatis存入数据库

园子里面找了很多关于json解析后存入数据库的方法,不是太乱,就是没有写完,我下面的主题代码多是受下面两位的启发,请按顺序查看 http://www.cnblogs.com/tian830937/p/6364622.html,我沿用了这个例子中的json数据格式,多层嵌套。... 查看详情

springbootfastjson解析多层嵌套复杂json字符串(代码片段)

1[]中括号代表的是一个数组;2大括号代表的是一个对象3双引号“”表示的是属性值4冒号:代表的是前后之间的关系,冒号前面是属性的名称,后面是属性的值,这个值可以是基本数据类型,也可以是引用... 查看详情

asp.net提取多层嵌套json数据的方法

publicstringGetJsonValue(JEnumerable<JToken>jToken,stringkey){IEnumeratorenumerator=jToken.GetEnumerator();while(enumerator.MoveNext()){JTokenjc=(JToken)enumerator.Current;if(jcisJObject||((JPro 查看详情

在java中解析多维JSON

...时间】:2014-05-1611:12:09【问题描述】:通过关注blog,我如何实现这样的解析JSON数据?谁能给我一些关于检索JSON数据的链接/教程。"batters":"batter":["id":"1001","type":"Regular","id":"1002","type":"Chocolate","id" 查看详情

json多层对象访问

背景说明本文主要记录演示,利用Gson工具,对多层的Json数据进行转换读取的示例。原始Json字符串格式化效果如下: 示例代码importjava.util.Iterator;importcom.google.gson.Gson;importcom.google.gson.GsonBuilder;importcom.google.gson.JsonArray;importcom.g... 查看详情

java解析json数据

转自:http://www.cnblogs.com/boy1025/p/4551593.html  3.解析JSON数据(小编使用的GSON进行json数据的解析)3-1【JSONObject的解析】下面是一个json文件:123456789101112131415161718192021222324252627282930313233343536373839404142434 查看详情

js解析json数据(如何将json字符串转化为数组)

1<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">2<HTML>3<HEAD>4<TITLE>NewDocument</TITLE>56<SCRIPTLANGUAGE="JavaScript">789vart="{‘firstName‘:‘cyra‘,‘lastN 查看详情