写了好长时间感觉SAX解析也不难理解,主要是XML文档的格式我们不熟悉,熟悉了XML文档的格式,再来看SAX解析就好多了!所以写了这篇关于XML文档常见的两种格式的详细解读

先来类比一下两种格式:

XML第一种形式:

此时我们需要解析的是元素(元素属性),下面是NSParser的几个代理方法,给出打印结果,通过打印结果来加深对XML文档的解析的理解

只给出打印结果的开始和结束部分来说明

注意观察didEndElement和foundCharacters两个方法的顺序

结合XML文档来说明:

1>发现整个文档---->这个方法对应XML中的文档声明,前边文章有说明

2>发现元素Vedios-->文档的跟元素,最外面的,

3>发现元素内容:这个元素内容是vedios的元素内容,对应下图中上.左.右的三个箭头锁所占据的位置,注意下边是没有的</vedios>表示vedios元素解析结束了,空白部分与vedios无关.

4>发现元素:即打印结果中的字典部分,字典里面的内容是XML文档vedio元素的属性,不是内容.

5>元素解析结束

6>进行下个元素的的解析,重复上面过程

7>SAX解析是一行一行执行

XML第二种形式

下图是需要解析的XML文档形式:此时要解析元素内容,而非元素属性

将打印结果拷贝到备忘录后分析,

下篇文章使用上图的XML进行SAX解析

转载于:https://www.cnblogs.com/LDSmallCat/p/4945862.html

XML的两种常见格式相关推荐

  1. tar.gz及tar.bz2两种常见格式的打包压缩及解压方法

    tar.gz 压缩文件 tar -zcvf 文件名.tar.gz 被压缩的文件/路径... 解压文件 tar -zxvf 打包文件.tar.gz 解压文件到指定目录 tar -zxvf 打包文件.ta ...

  2. 移动Web开发图片自适应两种常见情况解决方案

    本文主要说的是Web中图片根据手机屏幕大小自适应居中显示,图片自适应两种常见情况解决方案.开始吧 在做配合手机客户端的Web wap页面时,发现文章对图片显示的需求有两种特别重要的情况,一是对于图集, ...

  3. 一文带你掌握OBS的两种常见的鉴权方式

    OBS提供了REST(Representational State Transfer)风格API,支持您通过HTTP/HTTPS请求调用.在调用OBS的API前,需要了解OBS的鉴权认证方式.本文就将 ...

  4. 用Python解析XML的几种常见方法的介绍

    这篇文章主要介绍了用Python解析XML的几种常见方法,包括快速的使用ElementTree模块等方法的实例介绍,需要的朋友可以参考下 一.简介 XML(eXtensible Markup Lang ...

  5. android内存池,两种常见的内存管理方法:堆和内存池

    描述 本文导读 在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空 ...

  6. 使用定制的NSDictionary的方法,对NSArray进行排序(附:数组排序两种常见方法)

    NSArray中存放的是NSDictionary,可以使用策略的方法对NSDictionary进行定制,增加比较的方法.然后调用NSArray的sortUsingSelector方法对数组进行排序,这 ...

  7. 突击计划——两种温度格式的转换

    题目:两种温度格式的转换 #include <stdio.h> //两种温度格式的转换 /* 根据华氏和摄氏温度定义,利用转换公式如下: C=(F-32)/1.8 F=C*1.8+32 * ...

  8. 两种常见的周期性特征,时序必知强特

    来源:kaggle竞赛宝典 在时间序列问题中,周期特征是异常重要的,例如: 地铁流量预测中的周期性,每周一到周五的早上地铁流量就特别大,但是到了周末人就比较少: 股票涨跌的预测问题中,在节假日之前,例 ...

  9. PDF转CAD的dwg和dxf两种标准格式

    大家应该都知道cad有dwg和dxf两种标准格式,我们很多时候要将 pdf 转 cad 格式, pdf 为我们保存文件格式,这样可以保证 cad 文件的完整性和安全性.转换成 CAD 格式分两种标准格 ...

最新文章

  1. linux_域名映射
  2. pandas中dataframe的索引使用和转换为array
  3. WEB Service 下实现大数据量的传输
  4. CSS基础(part10)--盒子模型之边框
  5. 学习笔记(51):Python实战编程-ListBox
  6. 7本书告诉你,为什么拯救“流浪地球”的是人类,不是AI?
  7. 笔记:windows 2012 安装SQL 2008 群集报错
  8. SharePoint 2010版本表
  9. 计算机组成原理完整学习笔记(八):控制器设计
  10. vivado 开发教程(二) 使用IP集成器
  11. 计算机里怎么添加桌面,电脑上怎么把我的电脑添加到桌面上
  12. 无刷直流电机计算转速
  13. git如何选择性合并_git - 如何挑选一系列提交并合并到另一个分支?
  14. 公众号七种有效的引流方式
  15. python-图片颜色转换-将红绿两色互换
  16. HTTP协议和Servlet技术
  17. 苹果新款笔记本_苹果自研CPU最快下月杀到 搭配史上最便宜Mac笔记本(全文)_苹果 新款MacBook Pro 13英寸_笔记本新闻...
  18. 动手学PyG(三):PyG中的mini-batches
  19. An attempt was made to call a method that does not exist. The attempt was ma
  20. 莱布尼兹天才发现,改变人类发展轨迹

热门文章

  1. 数据挖掘与机器学习——离群点检测之孤立森林(isolate forest)
  2. Android 底部导航栏+页面切换
  3. [摘录]第三章 打破部门门墙,优化团队绩效
  4. 推荐一些在线效率工具汇总(数据分析,舆情监测、图片语义识别等)
  5. 高粱副产品的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  6. MCNP学习笔记之命令行与接续运行
  7. GetElementById
  8. 如何在不同的窗口中打开多个Excel
  9. 苏州地区十大有影响力的调查研究咨询公司
  10. Ivar Jacobson 先生简介