返回以下JSON字符串:
String s = "{"errorCode":0,"result":"Processed","trips":[{"tripDestination":"Vancouver","tripStartTime":"07:41"},{"tripDestination":"Montreal","tripStartTime":"08:04"}]}";
我很容易得到errorCode和结果,如:
JSONObject jObject;
jObject = new JSONObject(s);
String result = jObject.getString("result");
Log.v("JSON Result", result);
但是我知道它是一个JSON字符串中的值数组吗?
答案 0 :(得分:1)
您可能需要getJSONArray()
方法。
请参阅:http://www.json.org/javadoc/org/json/JSONObject.html#getJSONArray(java.lang.String)
修改:我会使用类似的内容:
ArrayList<String> destinations = new ArrayList<String>();
JSONArray trips = jObject.getJSONArray("trips");
for (int i = 0; i < trips.length(); i++) {
destinations.add(trips.getJSONObject(i).getString("tripDestination"));
}
答案 1 :(得分:1)
jObject.getJSONArray("trips").getJSONObject(0).getString("tripDestination");
答案 2 :(得分:0)
您可以使用:
JSONArray jsonArray = jObject.getJSONArray("trips");
但是考虑使用GSON来解析json。很可爱:
public class Class1 {
private String erroCode;
private String Processed;
private Class2[] trips;
}
class Class2 {
private String tripDestination;
private String tripStartTime;
}
Gson gson = new Gson();
Class1 object = gson.fromJson(s, Class1.class);