我真的需要你帮助这个代码,我使用loopj.com/android-async-http与服务器通信,一切正常但一直试图循环我从服务器获得的json对象。
{ “行”:[{ “FNAME”: “的Eb \'希姆”, “L-NAME”: “Durosimi”, “预测”: “4”, “Cpredictions”: “3”, “点”:“ 15 “},{” FNAME “:” Otunba”, “L-NAME”: “Alagbe”, “预测”: “5”, “Cpredictions”: “2”, “点”: “10”},{ “fname” 先: “奥拉米德”, “L-NAME”: “Jolaoso”, “预测”: “4”, “Cpredictions”: “2”, “点”: “10”},{ “FNAME”: “G”, “L-NAME” : “ADE”, “预测”: “1”, “Cpredictions”: “1”, “点”: “5”},{ “FNAME”: “Tiamiyu”, “L-NAME”: “waliu”, “预测” : “1”, “Cpredictions”: “1”, “点”: “5”}]}
但是没有能够把它弄好,尝试了不同的例子,但无济于事。
public void onSuccess(String content) {
// TODO Auto-generated method stub
super.onSuccess(content);
try {
JSONObject json = new JSONObject(content);
JSONObject leaders= json.getJSONObject("rows");
Log.d("leaders",leaders.toString());
for(int i=0;i<leaders.length(); i++){
String fname = leaders.getString("Fname");
Log.d("First Names",fname);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
感谢您的帮助
答案 0 :(得分:10)
试试这个..
{ ==&gt; JSONObject
和 [ ==&gt; JSONArray
try {
JSONObject json = new JSONObject(content);
JSONArray leaders= json.getJSONArray("rows");
Log.d("leaders",leaders.toString());
for(int i=0;i<leaders.length(); i++){
JSONObject jsonas = leaders.JSONObject(i);
String fname = jsonas.getString("Fname");
Log.d("First Names",fname);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
答案 1 :(得分:0)
这样,您可以将从Web服务接收的所有数据存储到哈希映射的arraylist中。
ArrayList<HashMap<String,String>> alist=new ArrayList<HashMap<String,String>>();
try {
JSONObject json = new JSONObject(content);
JSONArray jArray = json.getJSONArray("rows");
JSONObject json_data = null;
for (int i = 0; i < jArray.length(); i++) {
json_data = jArray.getJSONObject(i);
String fname = json_data.getString("Fname");
String lname = json_data.getString("Lname");
HashMap<String, String>map=new HashMap<String, String>();
map.put("Fname",Fname);
map.put("LName", Lname);
alist.add(map);
}