- 工作中经常会用到数据的转换,因此总结一下
如下Json格式的字符串
{
"status": 0,
"result": {
"location": {
"areacode": "101091107",
"name": "海港区",
"country": "中国",
"path": "海港区,秦皇岛市,河北省,中国"
},
"realtime": {
"text": "晴",
"code": "00",
"temp": 29.1,
"wind_class": "2级",
"wind_dir": "西南风"
},
"last_update": "2020-06-19 11:26"
}
}
- String类型转JSONObject,下面有两种方式可以进行转换
1、使用alibaba的com.alibaba.fastjson.JSONObject进行转换
import com.alibaba.fastjson.JSONObject;
/**
* 字符串转JSONObject
* @param str 传入的json格式字符串
* @return JSONObject
*/
public static JSONObject stringToJSONObject(String str){
JSONObject jsonObject = JSONObject.parseObject(str);
return jsonObject;
}
2、使用org.json.JSONObject进行转换
import org.json.JSONObject;
/**
* 字符串转JSONObject
* @param str 传入的json格式字符串
* @return JSONObject
*/
public static JSONObject stringToJSONObject(String str){
//通过org.json.JSONObject类进行String转JSONObject
JSONObject jsonObject1 = new JSONObject();
return jsonObject;
}
转换完成后,获取key中的value值,如下代码:获取result中的realtime的值,可以将其转换成string也可以将其转成JSONObject
String jsonStr= jsonObject.getJSONObject("result").get("realtime").toString();