google-gson解析json数据---小实例
2013-04-16 13:06
549 查看
由于android SDK中提供的JsonReader在API level 3.0才支持,所以这里采用google-gson提供的gson-2.0.jar来解析json数据.
gson-2.0.jar的下载地址为: http://code.google.com/p/google-gson/downloads/list
1、JsonUtils.java源码:
package com.android.hmr;
import java.io.IOException;
import java.io.StringReader;
import com.google.gson.stream.JsonReader;
public class 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();
if(tagName.equals("name")){
System.out.println("name:" + reader.nextString());
}
else if(tagName.equals("age")){
System.out.println("age:" + reader.nextInt());
}
}
reader.endObject();
}
reader.endArray();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
2、JsonActivity.java 源码:
package com.broadvision;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class JsonActivity extends Activity {
private Button btn = null;
private String jsonData = "[{\"name\":\"muran hu\",\"age\":20},{\"name\":\"congyu xiang\",\"age\":20}]";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn = (Button)findViewById(R.id.btn);
btn.setOnClickListener(new btnOnClickListener());
}
private class btnOnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
JsonUtils jsonUtils = new JsonUtils();
jsonUtils.parseJson(jsonData);
}
}
}
页面布局很是简单,一个Button就搞定,所以这里没有贴出页面布局XML代码,相信您一定会搞定滴!
gson-2.0.jar的下载地址为: http://code.google.com/p/google-gson/downloads/list
1、JsonUtils.java源码:
package com.android.hmr;
import java.io.IOException;
import java.io.StringReader;
import com.google.gson.stream.JsonReader;
public class 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();
if(tagName.equals("name")){
System.out.println("name:" + reader.nextString());
}
else if(tagName.equals("age")){
System.out.println("age:" + reader.nextInt());
}
}
reader.endObject();
}
reader.endArray();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
2、JsonActivity.java 源码:
package com.broadvision;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class JsonActivity extends Activity {
private Button btn = null;
private String jsonData = "[{\"name\":\"muran hu\",\"age\":20},{\"name\":\"congyu xiang\",\"age\":20}]";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn = (Button)findViewById(R.id.btn);
btn.setOnClickListener(new btnOnClickListener());
}
private class btnOnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
JsonUtils jsonUtils = new JsonUtils();
jsonUtils.parseJson(jsonData);
}
}
}
页面布局很是简单,一个Button就搞定,所以这里没有贴出页面布局XML代码,相信您一定会搞定滴!
相关文章推荐
- 很好用的Google 开源项目Gson在java中解析和创建json格式的数据
- 使用google的GSON解析json格式的数据
- 很好用的Google 开源项目Gson在java中解析和创建json格式的数据
- Gson解析JSON数据实例
- 用Google提供的Gson解析JSON数据
- JAVA使用Gson解析json数据实例解析
- google-GSON解析和生成JSON数据
- retrofit gson 解析json数据失败问题“com.google.gson.stream.MalformedJsonException:”
- Android中使用Gson解析JSON数据
- Android中解析json数据的方式之一:Gson
- Android笔记:Gsonformat解析Json数据
- Ruby和Ruby on Rails中解析JSON格式数据的实例教程
- 通过Gson解析Json数据
- Android实战——GsonFormat、Gson、fastjson快速搞定JSON数据解析
- gson解析json数据格式为object对象
- GSON方式生成和解析json数据
- 使用Gson解析两种复杂的json数据
- Gson解析复杂json数据
- JSON数据解析(GSON方式) (转)
- 利用Gson快捷解析Json数据