map和json互轉
阿新 • • 發佈:2018-11-05
/** * 轉換MP自己定義的JSONArray物件為List<Map>物件 * @param obj * @return */ public static List<Map<String,String>> jsonArrToList(JSONArray arr){ String key = null; String val = null; Iterator<String> it = null; JSONObject obj = null; Map<String,String> map = null; List<Map<String, String>> list = new ArrayList<Map<String,String>>(); try { for (int i = 0; i < arr.length(); i++) { map = new HashMap<String, String>(); obj = arr.getJSONObject(i); it = obj.keys(); while(it.hasNext()){ key = it.next(); val = (obj.get(key)).toString(); map.put(key, val); } list.add(map); } } catch (JSONException e) { e.printStackTrace(); } return list; } /** * 轉換MP自己定義的JSONArray物件為List<Map>物件 * @param obj * @return */ public static JSONArray listToJsonArr(List<Map<String,String>> list){ String key = null; String val = null; Iterator<String> it = null; JSONObject obj = null; Map<String,String> map = null; JSONArray arr = new JSONArray(); try { for (int i = 0; i < list.size(); i++) { obj = new JSONObject(); map = list.get(i); it = map.keySet().iterator(); while(it.hasNext()){ key = it.next(); val = (map.get(key)).toString(); obj.put(key, val); } arr.put(obj); } } catch (JSONException e) { e.printStackTrace(); } return arr; }