第十七章:android解析JSON
一、解析JSON数据:
首先引入包import org.json.JSONObject;(android sdk 14以后应该自带了 )
Android端的程序解析JSON和JSON数组:
package com.example.helloandroid; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; public class JSONActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_json); //JSON 解析 String strJson = "{\"sid\":\"2\",\"name\":\"张三\"}"; try { JSONObject userObject = new JSONObject(strJson); String name = userObject.getString("name"); Toast.makeText(JSONActivity.this, name, 1000).show(); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } //JSON 数组解析 String strArrayJson = "[{\"sid\":\"1\",\"name\":\"张三\"},{\"sid\":\"2\",\"name\":\"张四\"}]"; JSONArray userJsonArray; try { userJsonArray = new JSONArray(strArrayJson ); for(int i=0;i<userJsonArray.length();++i){ JSONObject userJObject = (JSONObject) userJsonArray.get(i); String name = userJObject.getString("name"); Toast.makeText(JSONActivity.this, name, 1000).show(); } } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }