/**
* 將一個json字符串轉成Map<String, String>
* 多個相同名稱得屬性,則保留最後一個屬性得值
* eg: {x:1,x:2}則最終x得值為2
*
* @param jsonStr
* @return
*/
public Map<String, String> jsonToMap(String jsonStr){
if (null==jsonStr) {
return null;
}
Map<String, String> map=new HashMap<String, String>();
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<String, String> map=jsonToMap(jsonStr);
return map.get(key);
}
注:1.此方法有个缺陷,多个相同名称得属性,只能保留最后一个得值
* eg: {x:1,x:2}則最終x得值為2
2.获取json某个值得方法是基于第一个方法得,所以请慎重