`

Json解析

 
阅读更多

package com.tony.json;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class JsonActivity extends Activity {
    /** Called when the activity is first created. */
	
	private String jsonData = "[{\"name\":\"zhangsan\",\"age\":22},{\"name\":\"lisi\",\"age\":23}]";
	private Button jsonButton;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        jsonButton = (Button) findViewById(R.id.json_button);
        jsonButton.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				JsonUtils jsonUtils = new JsonUtils();
				jsonUtils.parseJson(jsonData);
			}
		});
    }
}
 package com.tony.json;
import java.io.IOException;
import java.io.StringReader;

import android.util.Log;

import com.google.gson.stream.JsonReader;

public class JsonUtils {
	private static final String TAG = "JsonUtils";
	
	public void parseJson(String jsonData){
		JsonReader reader = new JsonReader(new StringReader(jsonData));
		try {
			reader.beginArray();	// 开始解析数组
			while (reader.hasNext()) {
				reader.beginObject();	// 开始解析对象
				while (reader.hasNext()) {
					String tagName = reader.nextName();	// 得到键值对中的key
					if (tagName.equals("name")) {	// key为name时
						Log.i(TAG, "name--------->" + reader.nextString());	// 得到key中的内容
					}else if (tagName.equals("age")) {	// key为age时
						Log.i(TAG, "age--------->" + reader.nextInt());	// 得到key中的内容
					}
				}
				reader.endObject();
			}
			reader.endArray();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics