/** * 將一個json字符串轉成Map* 多個相同名稱得屬性,則保留最後一個屬性得值 * eg: {x:1,x:2}則最終x得值為2 * * @param jsonStr * @return */ public Map jsonToMap(String jsonStr){ if (null==jsonStr) { return null; } Map map=new HashMap (); String[] s=jsonStr.replace("\"", "").replace("{", "").replace("}", "").split(","); for (String st : s) { String[] s1=st.split(":"); if (s1.length==3) { map.put(s1[0], null); map.put(s1[1], s1[2]); continue; } if (s1.length==2) { map.put(s1[0], s1[1]); } } return map; } /** * 獲取json字符串中某個值 * @param jsonStr * @param key * @return */ public String getJsonValueByKey(String jsonStr,String key){ Map map=jsonToMap(jsonStr); return map.get(key); }
注:1.此方法有个缺陷,多个相同名称得属性,只能保留最后一个得值
* eg: {x:1,x:2}則最終x得值為22.获取json某个值得方法是基于第一个方法得,所以请慎重