[{“placeID”:“p0001”,“placeName”:“INTI国际大学”,“placeType”:“教育”,“placeLat”:“2.813997”,“placeLng”:“101.758229”,“placePict” :“”},{“placeID”:“p0002”,“placeName”:“Nilai International College”,“placeType”:“Education”,“placeLat”:“2.814179”,“placeLng”:“101.7700107”,“placePict “:”“}]
如何解码从Android上的PHP脚本发送的JSON?
答案 0 :(得分:1)
请试试这个
String s = "[{\"placeID\":\"p0001\",\"placeName\":\"INTI International University\",\"placeType\":\"Education\","
+ "\"placeLat\":\"2.813997\",\"placeLng\":\"101.758229\",\"placePict\":\"\"},"
+ "{\"placeID\":\"p0002\",\"placeName\":\"Nilai International College\",\"placeType\":\"Education\",\"placeLat\":\"2.814179\",\"placeLng\":\"101.7700107\",\"placePict\":\"\"}]";
ArrayList<String> arrplaceID = new ArrayList<String>();
ArrayList<String> arrplaceName = new ArrayList<String>();
try {
JSONArray arr = new JSONArray(s);
for (int i = 0; i < arr.length(); i++) {
JSONObject jsonObject = arr.getJSONObject(i);
arrplaceID.add(jsonObject.optString("placeID"));
arrplaceName.add(jsonObject.optString("placeName"));
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
for (int i = 0; i < arrplaceID.size(); i++) {
Log.e("arr[" + i + "] place Name", arrplaceName.get(i));
}
答案 1 :(得分:0)
您可以查看此页面,您的问题有很多有用的解决方案:;
答案 2 :(得分:0)
这有什么问题请阅读本教程以解析JSON,以后它可能会有所帮助。json parsing link
答案 3 :(得分:0)
请遵循以下几点。
1)看来你得到的回应是Json Array。所以通过响应字符串创建一个json数组。
JSonArray jArray = new JsonArray(responseString);
2)现在你在jArray中得到了回应。现在迭代一个循环并从JsonArray中获取json对象,在你的情况下你有两个json对象。
for(i,i<jArray.size,i++)
{
JsonObject obj=jArray.get(i);
// here you got your first entry in jsonObject.
// nor use this obj according to ur need. you can say obj.getString("placeID");
// and so on.
}
请参阅此内容以了解有关json link
的更多信息答案 4 :(得分:0)
使用JSONArray类:
JSONArray jsonplaces = new JSONObject(stringPlaces);
然后你可以使用for循环迭代数组:
for (int i = 0; i < jsonplaces.length(); i++) {
JSONObject jsonplace = (JSONObject) jsonplaces.get(i);
//read items, for example:
String placeName = jsonplace.getString("placeName");
}