【幻化万千戏红尘】qianfengDay28-XML解析之SAX和PULL解析基础学习:

前端之家收集整理的这篇文章主要介绍了【幻化万千戏红尘】qianfengDay28-XML解析之SAX和PULL解析基础学习:前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
课程回顾: HTTP协议:超文本传输协议 目前互联网中使用最为广泛的通信协议 URL:统一资源定位符 常用的方式: 1、HttpURLConnection 使用步骤: 1、创建URL对象 2、创建连接对象 3、设置请求属性 4、连接 5、验证状态响应码 6、获取服务器响应信息 7、释放 2、okHttp 使用步骤: 1、创建客户端对象 2、创建请求内容对象(POST) 3、创建请求对象 4、创建响应对象 5、验证是否成功 6、获取响应内容 今日内容: XML:EXtensible Markup Language:可扩展的标记性语言 是跨平台、跨网络、跨编程语言一种数据描述的语言 XML设计出来是为了描述数据,可以实现在不同的网络、平台、编程语言进行数据的交互 XML的用处: 1、传输数据 2、配置文件 XML语法规则: 1、区分大小写 2、标签有始有终 3、标签自定义 4、标签可以嵌套使用 5、属性的值必须使用双引号 6、必须以根标签开始和结束 XML和HTML的区别? XML: 1、描述数据 2、区分大小写 3、语法更严谨 4、标签自定义 HTML: 1、显示数据 2、不区分大小写 3、语法不是很严谨 4、标签固定 XML格式: 1、引导区 <?xml version="1.0" encoding="UTF-8"?> 必须在文档的第一行 指明xml的版本和文档的编码格式 2、数据区 都是自定义标签标签:文档中唯一 必须以根标签开始和结束 XML的解析方式: 1、SAX JAVA源生的解析方式 读着解析着 以事件驱动的形式,返回事件通知自动调用对应的方法进行数据的处理 2、PULL Android中极力推荐的解析方式,谷歌开发 以事件驱动进行,返回事件常量,需要程序员控制事件的进行 解析XML的方式和步骤: 一、SAX解析XML步骤: 1、根据XML模板创建类 2、创建DefaultHandle的子类并重写需要的方法 重写方法: 1、startDocument() 接收文档开始的通知 2、endDocument() 接收文档结束的通知 3、startElement(String uri,String localName,String qName,Attributes attributes) 接收元素开始的通知,开始标签 参数说明: 第一个参数:命名空间 ,区分同名的标签名称 第二个参数:本地节点名称,就是命名空间的别名 第三个参数:开始标签名称 第四个参数:属性集 Attributes:属性集接口,记录的都是开始标签属性内容 常用方法: 1、getLength:获取属性个数 2、getQName:获取属性名称 3、getValue:获取属性的值 4、endElement(String uri,String qName) 接收元素结束的通知,结束标签 参数说明: 第一个参数:命名空间 ,区分同名的标签名称 第二个参数:本地节点名称,就是命名空间的别名 第三个参数:开始标签名称 5、characters(char[] ch,int start,int length) 接收元素中字符数据的通知,文本内容 参数说明: 第一个参数:字符数组 第二个参数:文本内容的起始索引 第三个参数:文本内容的字符个数 3、创建解析工厂 4、创建解析器 5、创建自定义DefaultHandle类的子类对象 6、开始解析--parse 7、获取解析结果 二、PULL解析XML步骤: 1、根据xml模板创建类 2、创建解析工厂 3、创建解析器 4、设置解析的数据源 5、开始解析 XmlPULLParse 常用方法: getEventType:获取初始事件 getName:获取标签名称 getText:获取文本内容 getAttributeCount:获取属性个数 getAttributeName:获取属性名称 getAttributeValue:获取属性的值 重载方法: 1、第一个参数属性的索引 2、第一个参数命名空间,第二个参数属性名称 next:获取下一个事件 nextText:获取下一个文本事件(只能获取开始标签和结束标签之间的文本内容) Pull的事件常量: 0---START_DOCUMENT:开始文档 1---END_DOCUMENT:结束文档 2---START_TAG:开始标签 3---END_TAG:结束标签 4---TEXT:文本内容 SAX和PULL解析的区别? SAX: 自动 无法控制事件的终止 PULL: 手动 可以自己控制事件的发展 原文链接:https://www.f2er.com/xml/294900.html

猜你在找的XML相关文章