android使用Gson来解析json

Gson是一种对象的解析json,非常好用,介绍一个站点http://json.parser.online.fr/能够帮我们看一个字符串是不是Json

对于Json文件

{
  "id" : "3232",
  "data" : {
    "data1" : {
      "name" : "xiaoming",
      "age" : "12"
    }
    }
  }

假设用Gson来解析的话,就要定义与这个json节点相应的类,我们用MyData来表示解析完的json对象,Data来代表解析完data节点的对象,Data1类来代表data1节点的对象

public class MyData {
	int <strong>id</strong>;
	Data <strong>data</strong>;
}
public class Data {

	Data1 <strong>data1</strong>;
}
public class Data1 {

	String <strong>name</strong>;
	String <strong>age</strong>;
}

注意,成员变量的名字一定要跟节点的名字一样(加粗的字符)

我们把json文件放在assets下,解析的时候这样写:

	public void parseAssertData() {
		InputStream is = null;
		try {
			is = this.getAssets().open("ss.json", Context.MODE_PRIVATE);
			int length = is.available();
			byte[] buffer = new byte[length];
			is.read(buffer);
			String temp = new String(buffer);

			Reader response = new StringReader(temp.toString());
			Gson gson = new Gson();
			MyData mydata = gson.fromJson(response,MyData.class);
			System.out.println("===age="+mydata.data.data1.age);
			
		} catch (IOException ex) {
			ex.printStackTrace();
		}
	}

能够在http://download.csdn.net/detail/baidu_nod/7643643下载这个非常easy的样例(包括gson的那个jar包)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。