我有一个由php文件生成的json编码消息。问题是我无法在textview中形成它以在android上显示它。
package com.saki.json;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import org.json.JSONObject;
import org.json.JSONException;
public class JsonActivity extends Activity {
private static final String JSON_STRING =
"{\"person\":{\"name\":\"A\",\"age\":30,\"children\":[{\"name\":\"B\",\"age\":5}," + "\"name\":\"C\",\"age\":7},{\"name\":\"D\",\"age\":9}]}}";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView line1 = (TextView)findViewById(R.id.line1);
TextView line2 = (TextView)findViewById(R.id.line2);
TextView line3 = (TextView)findViewById(R.id.line3);
try {
JSONObject person = (new JSONObject(JSON_STRING)).getJSONObject("person");
String name = person.getString("name");
line1.setText("This person's name is " + name);
line2.setText(name + " is " + person.getInt("age") + " years old.");
line3.setText(name + " has " + person.getJSONArray("children").length()
+ " children.");
} catch (JSONException e) {
e.printStackTrace();
}
}
我该如何解决这个问题?
答案 0 :(得分:0)
正如Alex所说,JSON格式正确。在使用之前,我总是经过我http://jsonformatter.curiousconcept.com/或http://json.parser.online.fr/。试试这个:
{\"person\":{\"name\":\"A\",\"age\":30,\"children\":[{\"name\":\"B\",\"age\":5},{\"name\":\"C\",\"age\":7},{\"name\":\"D\",\"age\":9}]}}