fastJson解析复杂的json字符串,经测试已经成功解析

要解析的json数据格式为:

HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus:
	{

	},
	Data:
	{
		TourCopyWriterInfo:
		{
			DefaultCopyWriter: String,
			SearchValue: String
		},
		ThemeList:
		[
			{
				Key: String,
				Value: String,
				PoiId: String,
				IsJump: False
			}
		],
		DestinationList:
		[
			{
				DestName: String,
				CategoryId: 0,
				SubDestList:
				[
					{
						Key: String,
						Value: String,
						PoiId: String,
						IsJump: False
					}
				]
			}
		],
		TourProductList:
		{

		}
	}
}

要解析的为Data对象中的ThemeList数组,自己写的ThemeList元素的javabean代码如下:
/** * Created by sqhan on 2016/5/30. */public class TopTripType {    String key;    String value;    String poiId;    boolean isJump;

    public String getKey() {        return key;    }

    public void setKey(String key) {        this.key = key;    }

    public String getValue() {        return value;    }

    public void setValue(String value) {        this.value = value;    }

    public String getPoiId() {        return poiId;    }

    public void setPoiId(String poiId) {        this.poiId = poiId;    }

    public boolean isJump() {        return isJump;    }

    public void setJump(boolean jump) {        isJump = jump;    }}

解析的代码为:
//用fastjson来解析拉取到的数据,经测试已解析成功
    public List<TopTripType> parseResponseData(String responseStr) {
        List<TopTripType> result;
        try {
            JSONObject object = JSON.parseObject(responseStr);
            JSONObject data = (JSONObject) object.get("Data");
            JSONArray jsonArray = data.getJSONArray("ThemeList");
            result = JSON.parseArray(jsonArray.toJSONString(), TopTripType.class);

        } catch (Exception e) {
            result = new ArrayList<>();
            LogUtil.e(TAG, "parseResponseData()中解析json出现异常");
        }
        return result;

    }

  OK,有些细节不再详细说明,需要请留言多多交流。

				
时间: 2024-11-05 15:52:18

fastJson解析复杂的json字符串,经测试已经成功解析的相关文章

Qt平台下使用QJson解析和构建JSON字符串

前言 上一篇介绍了C语言写的JSON解析库cJSON的使用:使用cJSON库解析和构建JSON字符串 本篇文章介绍,Qt开发环境下QJson库的使用示例,JSON解析配合API接口,就可以实现一些有趣的工具了,如全国油价查询工具,全国天气查询,空气质量查询,黄历查询,生活指数等等实用工具的开发. 分享几个免费的API提供平台: K780:http://www.k780.com/api 天气API:http://api.help.bj.cn/api/ 心知天气:https://www.senive

JSONObject和JSONArray解析和构造json字符串

JSON-lib包(最关键的两个类分别是JSONObject和JSONArray)完成对json的构造和一些基本方法的使用. 二者区别: ①JSONObject构造的字符串是键值对形式(key:value),多个键值对间以英文逗号连接: ②JSONArray构造的字符串是数组形式([array1,array2,...]). 需要使用的包下载链接:http://pan.baidu.com/s/1o7MZ8X8 一.JSONObject的使用. (1)JSON字符串的两种构造方法: ①使用Java对

servlet+ajax+json字符串后台传入,前端解析并把数据循环填入表格实例

写在前面:1.源代码来源于博客http://blog.sina.com.cn/u/2904067371 ,在此基础上对于前端代码稍作更改,把传过来的数据解析并传入表格2.json解析,用eval()3.写入表格 table.rows[i].cells[j].innerHTML4.导入java中json应用的jar包(如果没有导入jar包或者包不全就不会有import net.sf.json.JSONArray;import net.sf.json.JSONObject;JSONArray.JSO

JSON.parse 解析json字符串时,遇换行符报错

今天遇到后台返回的json字符串转对象时报错了,发现有个textarea提交的字段里有换行符. 错误原因:JSON.parse转json字符串时遇到一些特殊字符需要先转义,如图所示 可以用str.replace(/\n/g,"\\\\n")转义,'\\'转成单个'\','\\n'转成'\n',最后转成'\\n'这样就可以用parse转成对象时变为'\n',取出的字符串设置到html文本中\n被解析为换行. ECMA Script注明json字符串中需要转义的字符: 测试: 1.var

Android用Gson解析JSON字符串

在volley框架中有一个 protected Response<Result<T>> parseNetworkResponse(NetworkResponse response){}函数.从服务器上或者在缓存中获取的JSON字符串在这个函数进行解析. String jsonString = new String(response.data, HttpHeaderParser.parseCharset(response.headers, HTTP.UTF_8)) Result<

使用Jackson解析首字母大写的json字符串

Jackson在解析返回的json字符串时始终报错,纠结很久之后才找到原因,原来是是由于json字符串中的字母都是首字母大写,导致jackson找不到相应的KEY. 在项目中经常使用从服务器获取的数据,有时从服务器获取的json字符串中的首字母是大写的,使用Jackson解析是就会报一下错误: Exception in thread "main" org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecogniz

Java-json系列(二):用JSONObject解析和处理json数据

本文中主要介绍JSONObject处理json数据时候的一些常用场景和方法. (一)jar包下载 所需jar包打包下载百度网盘地址:https://pan.baidu.com/s/1c27Uyre (二)常见场景及处理方法 1.解析简单的json字符串: 1 // 简单的json测试字符串 2 public static final String JSON_SIMPLE = "{'name':'tom','age':16}"; 3 4 JSONObject obj = JSONObje

java遍历复杂json字符串获取想要的数据

https://blog.csdn.net/qq_34309663/article/details/80508125 java如何解析复杂的json数据关于json处理的包有好几个,比如jackson.Gson.Fastjson.Gson是谷歌做的,功能强大:Fastjson是阿里巴巴做的,性能更快.具体用哪个,开心就好.我这里两个都没用,用的是java的一个类库-json-lib.如果你用的是maven构建的项目,添加依赖请注意加上JDK版本15,详情请戳这里ok,多的不说了,让我们直接来解析

JavaScript对象与JSON字符串互相转换详解

JSON是目前互联网数据传输所采用的的主要格式,很多编程语言都有针对JSON的解析器和序列化器,在web前台领域,js对象与JSON字符串的互相转换需求也较为常见. 此文主要讲解js对象和JSON字符串互相转换的方法和一些细节 首先如果需要在开发中使用JSON传输及相应转换需要在html中引入json.js或者json2.js,下载地址:https://github.com/douglascrockford/JSON-js 1.js对象转JSON字符串(序列化) var jsonText = J