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