Android解析JSON数据
一.什么是JSON
二.怎么解析JSON
一.什么是JSON:
1.1JSON的定义:
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。(百度百科)
1.2JSON的格式:
{
"Name": "xiaowang",
"age": "21"
}
二.怎么解析JSON
2.1首先我们要有一个JSON的字符串,一般情况下是从服务器拿到的。然后进行如下操作:
JSONObject jsonObject = new JSONObject(String JSONString);
将JSON字符串转化为一个JSONObject对象。
然后:
String name = jsonObject.getString(“name”);
int age = jsonObject.getInt("age");
如果JSON中放着的是一个对象集合
{
"people":[
{
"name":"Brett",
"age":"17"
},
{
"name":"Jason",
"age":"18"
}
]
}
那么我们可以这样做:
JSONArray persons = jsonObject.getJSONArray("dataList");//取到JSON集合
List<person> personList = new ArrayList();//定义集合
if(persons !=null && persons .length()!=0)
{
for (int i = 0; i < persons .length(); i++)
{
JSONObject persion= (JSONObject) persons .get(i);
String name = person.getString("name");
int age= person.getInt("age");
Person p = new Person();
p.setName(name);
p.setAge(age);
personList .add(lessonItem);
}
}
现在各大公司都有自己的开源工具供我们使用,但了解内部原理也能加深我们的理解。如果有不对的地方欢迎指正!