0

我有这个 HTTP/JSON 代码应该从数据库中检索数据,但是我该如何将它打印到屏幕上。如果您需要任何额外的代码,请告诉我。谢谢

String result = "";
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("name","Badminton"));

//http post
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("myurl.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
}
catch(Exception e1){
Log.e("log_tag", "Error in http connection "+e1.toString());
}

//convert response to string
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();
result=sb.toString();
}

catch(Exception e){
Log.e("log_tag", "Error converting result "+e.toString());
}

//parse json data
try{
JSONArray jArray = new JSONArray(result);
for(int i=0;i<jArray.length();i++)
{
JSONObject json_data = jArray.getJSONObject(i);
Log.i("log_tag","type: "+json_data.getInt("id"));
}
}

catch(Exception e)
{
Log.e("log_tag", "Error parsing data "+e.toString());
}

那么我将如何将我从 PHP 文件收到的数据打印到屏幕上,我稍后会用它做更多的事情

4

2 回答 2

1

如果您只是对查看 JSON 感兴趣,并且如果它足够小,您可以举杯。

Toast.makeText(context, text, Toast.LENGTH_LONG).show();

如果您想查看整个 json,可以将其放入 aTextView并使用 JSON 对象的toString方法来漂亮地打印它。

于 2013-04-04T16:09:04.417 回答
0

如果您只想快速向用户显示它,您可以使用Toast. 更多关于 Toasts 的信息可以在这里找到

Toast toast = Toast.makeText(getApplicationContext(), text, Toast.LENGH_SHORT).show();

如果您想在特定视图中显示它,例如TextView屏幕上,您需要找到该视图并设置您想要显示的文本。

TextView v = (TextView) findViewById(R.id.where_im_displaying_text);
v.setText(text);

如果您正在尝试做其他事情,请告诉我们,以便我们提供帮助。

于 2013-04-04T16:05:01.050 回答