Mega Code Archive

 
Categories / Android / Development
 

Parse Json string

package app.test; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; import org.json.JSONObject; import org.json.JSONException; public class Test 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();         }     } } //main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"   android:layout_width="fill_parent"   android:layout_height="fill_parent"   android:orientation="vertical">   <TextView     android:id="@+id/line1"     android:layout_width="fill_parent"     android:layout_height="wrap_content"   />   <TextView     android:id="@+id/line2"     android:layout_width="fill_parent"     android:layout_height="wrap_content"   />   <TextView     android:id="@+id/line3"     android:layout_width="fill_parent"     android:layout_height="wrap_content"T   /> </LinearLayout>