《Android移动应用开发》JSON数据解析_第1页
《Android移动应用开发》JSON数据解析_第2页
《Android移动应用开发》JSON数据解析_第3页
《Android移动应用开发》JSON数据解析_第4页
《Android移动应用开发》JSON数据解析_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JSON2023/9/28142023/9/28认识JSONJSON核心解析类目录CONTENT12JSON解析工具:Gson3参考教材:《Android应用开发项目化教程》认识JSON特点JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。具有良好的可读和便于快速编写的特性,同时也易于机器解析和生成,非常适合于服务器与客户端的交互。JSON采用与编程语言无关的文本格式,业内主流技术为其提供了完整的解决方案(有点类似于正则表达式),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。1认识JSON数据结构MapMap结构也称为对象,以键值对的形式给出,键和值之间用“:”隔开,两个Map之间用“,”隔开,一般表示形式如下: {'key1':'value1','key2':'value2'}1认识JSON数据结构ArrayArray就是普通意义上的数组,一般形式如下:

['arr1','arr2','arr3'];1认识JSON数据格式对象(Object):一个对象以“{”开始,并以“}”结束。一个对象包含一系列非排序的键值对,每个键值对之间使用“,”分隔。名称-值(Collection):名称和值之间使用“:”隔开,一般的形式是:{name:value}。数组(Array):使用[]包含所有元素,每个元素用逗号分隔,元素可以是任意的Value字符串(String):以""括起来的一串字符。数值(Number):一系列0-9的数字组合,可以为负数或者小数。布尔值(Boolean):表示为true或者false。1JSON核心解析类org.jsonAndroid的JSON解析部分都在包org.json下,提供:JSONObjectJSONStringerJSONArrayJSONTokenerSONExceptionJSONStringJSONWriterJSONReader2JSON核心解析类org.jsonJSONObjectJSONObject是一个无序的键值对的集合,可以看作是一个JSON对象,这是系统中有关JSON定义的基本单元。它的外在形式是一个用大括号包裹,并用冒号将名字和值分开的字符串。内部形式就是一个对象。JSONObject提供了一系列的get、set和opt方法来访问JSONObject实例。这些值的类型可以是Boolean、JSONArray、JSONObject、Number、String或者默认值JSONObject.NULL对象。2JSON核心解析类org.jsonJSONStringerJSONStringer是JSON文本构建类,用于帮助快速和便捷的创建JSON文本。其最大的优点在于可以减少由于格式的错误而导致程序异常,引用这个类可以自动严格按照JSON语法规则创建JSON文本。每个JSONStringer实体只能对应创建一个JSON文本。2JSON核心解析类org.jsonJSONArrayJSONArray代表一组有序的数值。表现形式是用方括号包裹,数值以逗号","分隔(例如:[value1,value2,value3])。这个类的内部同样具有查询行为,通过get()和opt()两种方法都可以根据index索引返回指定的数值,put()方法用来添加或者替换数值。这个类和JSONObject支持相同的数据类型。2JSON核心解析类org.jsonJSONTokenerJSONTokener是系统为JSONObject和JSONArray构造器的解析类,它可以从源信息中提取数值信息。2JSON核心解析类org.jsonSONExceptionJSONException是类抛出的异常信息。当语法错误或者过程异常的时候,会抛出JSONException异常。以下情况下会产生JSONException:试图解析或构建一个格式错误的JSON文档。使用null作为关键词。使用不提供给JSON数值类型,如NaN或无穷大的。使用不存在的键进行查找。类型不匹配的解析。2JSON核心解析类org.jsonJSONStringJSONString是一个接口,以便其他类可以通过实现该接口的toString()方法来改变JSONObject、JSONArray等内部toString()方法的功能,以实现他们自己的序列化。2JSON核心解析类org.jsonJSONWriterJSONWriter位于android.util包下,是一个快速将JSON文本写入数据流的工具。每次只能输出一个字符串。流中既包括文字值(字符串、数字、布尔值和空值),也包括作为对象、数组的开始和结束标志的分隔符。2JSON核心解析类org.jsonJSONObjectJsonReader位于android.util包下,主要用来读取JSON字符串的内容。2JSON解析工具:Gson来源Gson是Google提供的一个轻量级的JSON转换类库,在Java平台可以方便的将一个Java对象转换成JSON格式,也可以将JSON格式的字符串转换成Java对象。3JSON解析工具:Gson核心类Gson使用Gson的主类,构造Gson类的实例后,可使用toJson(Object)方法将Bean里面的内容转换为JSON内容,使用fromJson(String,Class)方法将JSON对象封装出一个一个的Bean对象。3JSON解析工具:Gson核心类GsonBuilder用于创建Gson的实例,和使用newGson()不同的是,GsonBuilder可进行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论