0

データに問題がありましjson arrayた。次のコードを試してみましたが、json response完全に取得できますがlistview、応答でも単一のデータを取得していますが、単一のアイテムを取得しているのはなぜですか?

コードは次のとおりです。

URL = "some url";

HttpClient mHttpClient = new DefaultHttpClient();
HttpGet mGetMethod = new HttpGet(URL);
HttpResponse mReponseMessage = mHttpClient.execute(mGetMethod);

String Response = EntityUtils.toString(mReponseMessage.getEntity());
Log.d("TAG", "O/P Response is " + Response);

JSONArray responseObject = new JSONArray(Response);
System.out.println("responseObject="+responseObject);

for(int i=0; i<responseObject.length(); i++) {                      
    obj = responseObject.getJSONObject(i);
}

ここに私のjson応答があります

[{"dmessage":"sfsfs","message":"sfsf","mp3":"Kalimba.mp3","user_message_id":"85","category":"Lottery","title":"dgfs"},{"dmessage":"prueba","message":"prueba","mp3":"NA","user_message_id":"80","category":"Lottery","title":"prueba"},{"dmessage":"prueba","message":"prueba","mp3":"NA","user_message_id":"79","category":"Lottery","title":"prueba"},

ここでobjはresponse object、応答オブジェクトでも単一の値を取得しています

誰かが問題を解決するのを手伝ってくれませんか ありがとう!

4

3 に答える 3

0

これを見て、解析について明確なアイデアを得る

JsonParser

于 2013-04-20T06:27:43.690 に答える
0

適切に解析する必要があります。最初に応答を文字列に変換してから、JSON オブジェクトとして解析します。

これを使って:

HttpClient mHttpClient = new DefaultHttpClient();
HttpGet mGetMethod = new HttpGet(URL);
HttpResponse mReponseMessage = mHttpClient.execute(mGetMethod);
HttpEntity entity = mResponseMessage.getEntity();
InputStream is = entity.getContent();

その後

try {
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
    sb.append(line + "\n");
}
is.close();
String json = sb.toString();
}
catch(Exception e)
{
 // 
}

次、

JSONObject jObj = new JSONObject(json);
responseObject=JObj.getJSONArray("array_name");// if passed as an array
for(int i=0; i<responseObject.length(); i++) {                      
JSONObject obj = responseObject.getJSONObject(i);
String dmessage,message,mp3,user_message_id,category,title;
dmessage= obj.getString("dmessage");
message= obj.getString("message");
mp3= obj.getString("mp3");
user_message_id= obj.getString("user_message_id");
category= obj.getString("category");
title= obj.getString("title");

// here you can add it to the list
}
于 2013-04-20T06:27:58.627 に答える