JSON
JSON是什么
- JSON(Java Script Object Notation(记号,标记))是一种轻量级的数据交换语言, 以文本字符串为基础,且易于让人阅读
[ {"name":"张三","age":21,"info":{"class":"三年一班","id":2016001}}, {"name":"李四","age":22,"info":{"class":"三年二班","id":2016002}}]
JSON有哪两种结构
- 对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种:
{"name":"张三","age":21,"info":{"class":"三年一班","id":2016001}}
- 数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,”javascript”,”vb”,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种:
[ {"name":"张三","age":21}, {"name":"李四","age":22}]
如何解析JSONNObject(附案例)
- JSONObject其实就是 json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}
{"name":"张三","age":21,"info":{"class":"三年一班","id":2016001}}
JSONObject jsonObject=new JSONObject(json_str)
String name=jsonObject.getString("name")
int age=jsonObject.getInt("age")
json1.setText(name)
json2.setText(age+"")
JSONObject classobject=jsonObject.getJSONObject("info")
String className=classobject.getString("class")
int id=classobject.getInt("id")
tv1.setText(className)
tv2.setText(id+"")
如何解析JSONArray(附案例)
- JSONArray就是一个json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的,Json对象中添加的是键值对,JSONArray中添加的是Json对象。
JSONArray jsonArray=new JSONArray(jsonarray);
// JSONObject jsonObject1=jsonArray.getJSONObject(0);
// String names=jsonObject1.getString("name");
// int ages=jsonObject1.getInt("age");
// tv3.setText(names);
// tv4.setText(ages+"");