Json工具,JsonObject、JsonArray、List<Map<String, Object>>、Map<String, Object>互转。
2015-08-20 13:58
1156 查看
通讯我们经常用到的Json,极其好用的转换工具类。public class JsonUtil {//把JsonArray的字符串转换成List<Map<String, Object>>public static List<Map<String, Object>> parseJsonArrayStrToListForMaps(String jsonArrayStr) {List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();try {if(jsonArrayStr != null) {JSONArray jsonArray = new JSONArray(jsonArrayStr);Map<String, Object> map = null;for(int j=0;j<jsonArray.length();j++) {JSONObject jsonObject = jsonArray.getJSONObject(j);map = parseJsonObjectStrToMap(jsonObject.toString());if(map != null) {list.add(map);}}}} catch(Exception e) {e.printStackTrace();}if(list.size() == 0) {return null;}return list;}//把JsonObject的字符串转换成Map<String, Object>public static Map<String, Object> parseJsonObjectStrToMap(String jsonObjectStr) {Map<String, Object> map = new HashMap<String, Object>();try {if(jsonObjectStr != null) {JSONObject jsonObject = new JSONObject(jsonObjectStr);for(int j=0;j<jsonObject.length();j++) {Iterator<String> iterator = jsonObject.keys();while(iterator.hasNext()) {String key = iterator.next();Object value = jsonObject.get(key);map.put(key, value);}}}} catch(Exception e) {e.printStackTrace();}if(map.size() == 0) {return null;}return map;}//把List<Map<String, Object>>的字符串转换成JsonArraypublic static String parseListForMapsToJsonArrayStr(List<Map<String, Object>> list) {String jsonArrayStr = null;if(list != null && list.size() != 0) {JSONArray jsonArray = new JSONArray();JSONObject jsonObject = null;Object value = null;for(Map<String, Object> map : list) {jsonObject = new JSONObject();Set<String> set = map.keySet();for(String key : set) {value = map.get(key);if(value != null) {try {jsonObject.put(key, value.toString());} catch (JSONException e) {e.printStackTrace();}}}if(jsonObject.length() != 0) {jsonArray.put(jsonObject);}}jsonArrayStr = jsonArray.toString();}return jsonArrayStr;}//把Map<String, Object>的字符串转换成JsonObjectpublic static String parseMapToJsonObjectStr(Map<String, Object> map) {String result = null;if(map != null && map.keySet().size() != 0) {Set<String> set = map.keySet();JSONObject jsonObject = new JSONObject();Object value = null;for(String key : set) {value = map.get(key);if(value != null) {try {jsonObject.put(key, value.toString());} catch (JSONException e) {e.printStackTrace();}}}if(jsonObject.length() != 0) {result = jsonObject.toString();}}return result;}}
相关文章推荐
- Android Native 绘图方法
- XML 与 JSON 优劣对比
- newtonsoft.json解析天气数据出错解决方法
- C#中struct和class的区别详解
- VBS ArrayList Class vbs中的数组类
- vbs 解析json jsonp的方法
- 大家看了就明白了css样式中类class与标识id选择符的区别小结
- C#实现将类的内容写成JSON格式字符串的方法
- jquery JSON的解析方式示例介绍
- c#版json数据解析示例分享
- ASP JSON类文件的使用方法
- C#实现对Json字符串处理实例
- C#实现Json转Unicode的方法
- php解析json数据实例
- PHP6 先修班 JSON实例代码
- 关于JSON以及JSON在PHP中的应用技巧
- 深入了解PHP类Class的概念
- .Net中的json操作类用法分析
- JavaScript中字符串(string)转json的2种方法
- js Object2String方便查看js对象内容