java 公用的解析json的方式,将json转换成集合的模式存放
来源:互联网 发布:云计算 大会 编辑:程序博客网 时间:2024/06/08 08:07
import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.json.JSONArray;import org.json.JSONObject;/** * * @author ahnw_01 * */public class JsonParseUtil {/** * 公用的解析json的方式,将json转换成集合的模式存放,最外层是一个map, * 里面由map和list嵌套组成,集合内部的格式与json数据本身的格式相同 * @param jsonStr * @return * @throws Exception */public static Map<String, Object> parseJsonToCollect(String jsonStr) throws Exception{ Map<String, Object>data = new HashMap<String, Object>(); JSONObject root=new JSONObject(jsonStr); Iterator<String> iterator = root.keys();String key = null;String value = null; JSONArray dataArray = null;while(iterator.hasNext()){key = iterator.next();try {dataArray = root.getJSONArray(key);if(dataArray != null){//如果这个字段是一个listList<Map<String,Object>> list = new ArrayList<Map<String,Object>>();for( int i = 0 ;i < dataArray.length(); i++ ){ list.add(parseJsonToCollect(dataArray.getString(i))); }data.put(key, list); }else{value = root.getString(key);//将json键值对放入map中data.put(key, value); }} catch (Exception e) {try {root.getJSONObject(key);data.put(key, parseJsonToCollect(root.getString(key)));} catch (Exception e1) {value = root.getString(key);//将json键值对放入map中data.put(key, value); } } }return data;} }
}
阅读全文
0 0
- java 公用的解析json的方式,将json转换成集合的模式存放
- 将json格式的数组字符串转换为java集合
- Java集合 Json集合之间的转换
- Java集合 Json集合之间的转换
- json的解析方式
- json的解析方式
- json解析的方式
- js将字符串转换成json的三种方式
- js将字符串转换成json的二种方式
- js将字符串转换成json的三种方式
- js将字符串转换成json的三种方式
- 将java类的泛型集合转换成json对象
- json学习(一)--将一个对象或集合转换成符合json数据格式的字符串
- java解析Json的两种方式
- java类的泛型集合转换成json对象
- android 将数据转换成JSON数据格式并使用JSONObject解析JSON格式的数据
- JSON与String之间的转换以及公用类
- java将实体对象转换成JSON格式的字符串
- 存储过程调试
- 谈谈数据库的ACID
- 构造函数,析构函数与virtual
- [转载整理]计算机视觉及机器学习牛人和资料
- MVP实现二级购物车
- java 公用的解析json的方式,将json转换成集合的模式存放
- ejabberd源码分析《一》application启动
- iOS 自定义tabbar中间按钮 超简单方法
- OPP :面向对象编程,深入理解类class
- java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMerger
- Greendao+多线程断点续传
- 数据结构实验之图论九:最小生成树
- svn分支与合并
- Android 调用系统联系人列表页并返回姓名和手机号码