【发布时间】:2012-03-05 13:36:26
【问题描述】:
我正在尝试使用 gson 将 json 对象转换为字符串,这是我的一些代码
public void returnJson(){
TextView one = (TextView) findViewById(R.id.textView1);
try{
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://10.0.2.2/textures_story_list.php");
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e) {
one.setText("error3");
}
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) {
one.setText("error2");
}
try{
JSONArray jArray = new JSONArray(result);
for(int i = 0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(0);
//Log.i("log_tag","story_name: "+json_data.getString("story_name") );
result += "\n" + jArray.getJSONObject(i);
}
one.setText(result);
}
catch(JSONException e) {
one.setText("error1");
}
return;
//end of returnJson()
}
这是输出到文本视图的内容
[{"story_name":"Story One"},{"story_name":"Story Two"},{"story_name":"Story Three"},{"story_name":"Story Four"},{"story_name":"Story Five"},{"story_name":"Story Six"}]
{"story_name":"Story One"}
{"story_name":"Story Two"}
{"story_name":"Story Three"}
{"story_name":"Story Four"}
{"story_name":"Story Five"}
{"story_name":"Story Six"}
正是这样,我需要知道为什么它会输出两次以及哪些代码导致每次输出,然后我还需要知道如何用 gson 更改它以便输出
Story One
Story Two
Story Three
Story Four
Story Five
Story Six
【问题讨论】:
-
您可以将此标记为已回答
标签: android json http-post gson