[英]Android json response in array
以下代码仅显示第一条记录。 谁能纠正我的错误。
使用这个尝试,我建立了与PHP的连接
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://10.0.2.2/androidphp/1/index.php");
httppost.setEntity(new UrlEncodedFormEntity(namevaluepairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
if(response.getStatusLine().getStatusCode() != 200){
Log.d("MyApp", "Server encountered an error");
}
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF8"));
sb= new StringBuilder();
sb.append(reader.readLine() + "\n");
String line = null;
while((line = reader.readLine()) != null){
sb.append(line + "\n");
}
is.close();
result = sb.toString();
}
使用这个try块我打印了所有值
try{
jArray = new JSONArray(result);
JSONObject json_data = null;
for(int i=0; i<jArray.length(); i++){
json_data = jArray.getJSONObject(i);
outputStream.append("Id="+json_data.getString("id"));
outputStream.append("Name="+json_data.getString("name"));
}
您的问题并不十分清楚,但是:
您要输出的结构可能与给定的结构不匹配。
对此: http : //developer.android.com/reference/org/json/JSONArray.html可以使用.toString()方法将任何JSON对象转换为String进行调试。
另外,您可以通过调试积极地逐步执行代码,以找出差距。
引用此: http : //en.wikipedia.org/wiki/JSON似乎要存储在“结果”中的结构应类似于以下内容:
[{“ id”:“ a”,“ name”:“ b”},{“ id”:“ a”,“ name”:“ b”}]
实际上可以像尝试和错误一样实际地读取JSON:逐步调试并检查Eclipse的“ expressions”选项卡,例如,哪个命令导致哪个结果:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.