本文实例讲述了Android编程解析Json格式数据的方法。分享给大家供大家参考,具体如下:
package com.practice.json; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class JsonDemo extends Activity { /* * 解析JSON的例子,str保存的是JSON代码,解析后的数据在LogCat里输出 */ String TAG = "Json message"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); detectJSON(); } private void detectJSON() { String str = "{"+ "\"日期\" : \"2011-06-06\","+ //Like 是 JSONObject "\"Like\" : {"+ "\"Name\" : \"加内特\","+ "\"Height\" : \"2.11cm\","+ "\"Age\" : 35"+ "},"+ //LikeList 就是一个 JSONObject "\"LikeList\":" + "{\"List\": " + "["+ //这里也是JSONObject "{"+ "\"Name\" : \"Rose\","+ "\"Height\" : \"190cm\","+ "\"Age\" : 23"+ "},"+ //这里也是JSONObject "{"+ "\"Name\" : \"科比\","+ "\"Height\" : \"198cm\","+ "\"Age\" : 33"+ "}"+ "]"+ "}"+ "}"; try { JSONObject dataJson = new JSONObject(str); Log.d(TAG, dataJson.getString("日期")); JSONObject nbaJson = dataJson.getJSONObject("Like"); Log.d(TAG, nbaJson.getString("Name")); Log.d(TAG, nbaJson.getString("Height")); Log.d(TAG, nbaJson.get("Age").toString()); JSONObject listJson = dataJson.getJSONObject("LikeList"); JSONArray arrayJson = listJson.getJSONArray("List"); for(int i=0;i<arrayJson.length();i++) { JSONObject tempJson = arrayJson.optJSONObject(i); Log.d(TAG, tempJson.getString("Name")); Log.d(TAG, tempJson.getString("Height")); Log.d(TAG, tempJson.getString("Age").toString()); } } catch (JSONException e) { System.out.println("Something wrong..."); e.printStackTrace(); } } }
希望本文所述对大家Android程序设计有所帮助。