将JSON转换成MAP的工具类
来源:互联网 发布:php平台是干什么用呢? 编辑:程序博客网 时间:2024/05/21 15:45
package com.xxxx.util;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.URL;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class MapTools { public static List<Map<String, Object>> parseJSON2List(String jsonStr){ JSONArray jsonArr = JSONArray.fromObject(jsonStr); List<Map<String, Object>> list = new ArrayList<Map<String,Object>>(); Iterator<JSONObject> it = jsonArr.iterator(); while(it.hasNext()){ JSONObject json2 = it.next(); list.add(parseJSON2Map(json2.toString())); } return list; } public static Map<String, Object> parseJSON2Map(String jsonStr){ Map<String, Object> map = new HashMap<String, Object>(); //最外层解析 JSONObject json = JSONObject.fromObject(jsonStr); for(Object k : json.keySet()){ Object v = json.get(k); //如果内层还是数组的话,继续解析 if(v instanceof JSONArray){ List<Map<String, Object>> list = new ArrayList<Map<String,Object>>(); Iterator<JSONObject> it = ((JSONArray)v).iterator(); while(it.hasNext()){ JSONObject json2 = it.next(); list.add(parseJSON2Map(json2.toString())); } map.put(k.toString(), list); } else { map.put(k.toString(), v); } } return map; } public static List<Map<String, Object>> getListByUrl(String url){ try { //通过HTTP获取JSON数据 InputStream in = new URL(url).openStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); StringBuilder sb = new StringBuilder(); String line; while((line=reader.readLine())!=null){ sb.append(line); } return parseJSON2List(sb.toString()); } catch (Exception e) { e.printStackTrace(); } return null; } public static Map<String, Object> getMapByUrl(String url){ try { //通过HTTP获取JSON数据 InputStream in = new URL(url).openStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); StringBuilder sb = new StringBuilder(); String line; while((line=reader.readLine())!=null){ sb.append(line); } return parseJSON2Map(sb.toString()); } catch (Exception e) { e.printStackTrace(); } return null; } //test public static void main(String[] args) { String url = "http://..."; List<Map<String,Object>> list = getListByUrl(url); System.out.println(list); }}
原文地址:http://www.cnblogs.com/daijinming/p/3940835.html
0 0
- 将JSON转换成MAP的工具类
- 将JSON转换成MAP的工具类
- 将pojo类转换成json的工具类
- 将map型数据转换成json格式的字符串
- JSONArray类将JavaBean,List,Map转换成json字符串
- 如何将Map转换成Gson json
- gson ,将json转换成Map
- Jackson 将Map对象转换成JSON
- 将Map转换为Obj的工具类
- Json和map相互转换工具类
- 将任意格式转换为JSON数据格式的工具类
- 将任意格式转换为JSON数据格式的工具类
- 将任意格式转换为JSON数据格式的工具类
- 将任意格式转换为JSON数据格式的工具类
- 将任意格式转换为JSON数据格式的工具类
- 将json 数组转换为Map 对象;[{}]此类字符串 则返回的对象的map
- IOS 将json转换成mode工具
- java处理json的工具类(list,map和json的之间的转换)
- Android BLE最完整的工具类(扫描/连接/读写/通知设备),可以手机与设备进行通讯
- 弧形Dialog进度条
- 10007---关于Java并发编程的总结和思考
- 详解spring 每个jar的作用
- SparkSQL------初涉
- 将JSON转换成MAP的工具类
- Post请求传递参数时,最好在请求头加上item.ContentType = "application/x-www-form-urlencoded";
- 20160704
- Crossfilter总结
- javaScript--02 CSS基础 下 相对定位,绝对定位,顺序流,z-index,float
- 一些常用的Intent_ACTION以及属性
- Unity调用android
- 建造者模式的简写方式分析
- github上传时出现error: src refspec master does not match any解决办法