博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gson转Map
阅读量:6733 次
发布时间:2019-06-25

本文共 1654 字,大约阅读时间需要 5 分钟。

使用google的Gson包。把json字符串转成Map<String,Object>以及List<Object>对象,记得下载Gson包,

我使用的是gson-2.1.jar

Gson下载地址:

以下是源代码:

package com.test;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import java.util.Set;import com.google.gson.JsonArray;import com.google.gson.JsonElement;import com.google.gson.JsonObject;import com.google.gson.JsonParser;/** * 使用Gson把json字符串转成Map * @author lianqiang * @date 2014/06/12 */public class JsonToMap {		/**	 * 获取JsonObject	 * @param json	 * @return	 */	public static JsonObject parseJson(String json){		JsonParser parser = new JsonParser();	    JsonObject jsonObj = parser.parse(json).getAsJsonObject();		return jsonObj;	}		/**	 * 依据json字符串返回Map对象	 * @param json	 * @return	 */	public static Map
toMap(String json){ return JsonToMap.toMap(JsonToMap.parseJson(json)); } /** * 将JSONObjec对象转换成Map-List集合 * @param json * @return */ public static Map
toMap(JsonObject json){ Map
map = new HashMap
(); Set
> entrySet = json.entrySet(); for (Iterator
> iter = entrySet.iterator(); iter.hasNext(); ){ Entry
entry = iter.next(); String key = entry.getKey(); Object value = entry.getValue(); if(value instanceof JsonArray) map.put((String) key, toList((JsonArray) value)); else if(value instanceof JsonObject) map.put((String) key, toMap((JsonObject) value)); else map.put((String) key, value); } return map; } /** * 将JSONArray对象转换成List集合 * @param json * @return */ public static List
toList(JsonArray json){ List list = new ArrayList(); for (int i=0; i

转载地址:http://zlfqo.baihongyu.com/

你可能感兴趣的文章
阿里云梁楹:这样的青春,别样的精彩
查看>>
JS中将变量转为字符串
查看>>
NodeJS package and module loading
查看>>
Android组件化--不一样的公共依赖管理方案
查看>>
Stack的c++实现(不完整)
查看>>
memcmp函数的简洁比较
查看>>
Pandas - 快速入门
查看>>
通过java流实现读取文件
查看>>
Benchmarking PostgreSQL vs. MySQL performance
查看>>
WAVEFORMATEX 格式说明
查看>>
Log4j 基本使用
查看>>
ssh 通过sshpass自动登录远程主机
查看>>
Eclipse/MyEclipse 常用的快捷键
查看>>
wordpress获取当前分类下的子分类
查看>>
解决Spring MVC @ResponseBody返回中文字符串乱码问题
查看>>
RecyclerView和LinearLayoutManager经常用到的几个方法
查看>>
Apache虚拟主机
查看>>
GC策略
查看>>
互联力量Silverlight Grid控件常见用法
查看>>
KBase关系数据库全文检索网关
查看>>