欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

Android上解析Json格式数据,androidjson

来源: 开发者 投稿于  被查看 35378 次 评论:63

Android上解析Json格式数据,androidjson


<无详细内容>

1.[Java]代码

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();
		}
    }
}

用户评论