JSON是一种轻量级的数据交换格式,具有良好的可读性和便于快速编写的特性。可以在不同的平台间进行数据交换。JSON是JavaScript对象表示语法的子集。JSON的值由数字(整数或浮点数)、字符串(在双引号内)、逻辑值(true或false)、数组(使用方括号[]包围)、对象(使用花括号{}包围)、null等组成,JSON中有且只有两种结构:对象和数组。
- 对象:在JSON数据中是{ }括起来的内容,数据结构为{key:value,key:value,…}的键值对结构。在面向对象的语言中,key为对象的属性,value为对应的属性值,属性值的类型可以是数字、字符串、数组、对象等。
- 数组:在JSON中是[ ]扩起来的内容,数据结构为[“java”,“c”,“c++”,…],使用索引获取值,字段值的类型可以是数字、字符串、数组、对象等。
Android解析JSON数据的方法和XML解析类似,主要有两种: 基于事件驱动和基于文档驱动解析方式
- 基于事件驱动
主流方式:Gson解析和Jackson解析 - 基于文档驱动
主流方式:Android Studio自带org.json解析
解析方式:基于文档驱动,类似于XML的DOM解析方法,先把全部文件读入到内存中,然后遍历所有数据,然后根据需要检索