我从JSONObject获取元素时遇到问题。
这是我的代码:
public static void getJSON(){
String googlemap = "http://maps.googleapis.com/maps/api/geocode/json?address=29.0+35.0&sensor=true";
HttpResponse httpRespone = GET.sendGetReq(googlemap);
try {
//Get Stream and convert it to String
String inputStreamAsString = convertStreamToString(httpRespone.getEntity().getContent());
//convert from String to JSONObject
JSONObject json = new JSONObject(inputStreamAsString);
String formatted_address = json.getJSONObject("results").getString("formatted_address");
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
当我打电话给
时String formatted_address = json.getJSONObject("results").getString("formatted_address");
我得到JSONException ...
我的json在这里: http://maps.googleapis.com/maps/api/geocode/json?address=29.0+35.0&sensor=true json link
我想取“formatted_address”的值。 你能帮帮我吗?
答案 0 :(得分:2)
results
是JSONArray
{}
这是JSONObject
[]
这是JSONArray
,可以包含X JSONObjects
,您可以通过for
循环或索引访问(如果您知道它) )
String formatted_address = json.getJSONArray("results").getJSONObject(0).getString("formatted_address");
答案 1 :(得分:0)
JSONObject jsonObject = new JSONObject("your json")
String formateed_address = jsonObject.getJSONArray("results").
getJSONObject(0).getString("formatted_address");