用SAX(simple API for XML)解析方式逐行扫描文档,可以在任一时刻停止解析,但是操作复杂、使用其SAX向文档添加或者删除内容比较困难。它既是一种接口,也是一个软件包。

SAX工作原理:对文档进行顺序扫描,当扫描到文档开始与结束、元素开始与结束,产生事件通知事件处理函数,由事件处理函数做相应动作,然后继续同样的扫描,直至文档结束。
文档处理事件、元素事件、DTD或Schema事件、错误事件
SAX接口:ContentHandler、ErrorHandler、DTDHandler、EntityResolver
(1)创建事件处理程序
MyContentHandler类继承DefaultHandler实现其中的方法:startDocument、endDocument、 startElement(String( 命名空间),String(不包含前缀的标签名),String(包含前缀的标签名),Attributes(属性))、 endElement(String,String,String,Attributes)、characters(char[](读取的标签所有内 容),int(从哪一位开始读取),int(读取内容的长度))
(2)创建SAX解析器
SAXParseFactory factory = SAXParseFactory.newIntance();
XMLReader reader = factory.newSAXParse().getXMLReader();
(3)将事件处理程序分配给解析器
reader.setContentHandler(new MyContentHandler());//设置内容处理器,其中MyContentHandler类中定义接口中的各种方法
(4)对文档进行解析,将每个事件发送给处理程序
reader.parse(new InputSourse(new StringReader(resultStr)));//将读取的数据直接放到StringReader对象中,StringReader专门用于以流的方式读取字符串
resultStr为网络上下载的文件被存储为String类型

转载于:https://www.cnblogs.com/Gaojiecai/archive/2011/08/12/2136310.html

XML文件解析 --------------------笔记相关推荐

  1. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)

    Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...

  2. Android开发历程_18(XML文件解析)

    前言  本文主要介绍在Android中怎样来解析XML文件.主要采用的是SAX机制,SAX全称为Simple API for XML,它既是一种接口,也是一个软件包.作为接口,SAX是事件驱动型XML ...

  3. java怎么xml文件解析_Java对Xml文件解析

    JAVA 解析 XML 通常有两种方式,DOM 和 SAX. DOM 虽然是 W3C 的标准,提供了标准的解析方式,但它的解析效率一直不尽如人意,因为使用DOM解析XML时,解析器读入整个文档并构建一 ...

  4. Python3将xml文件解析为Python对象

    一.说明 从最开始写javascript开始,我就很烦感使用getElementById()等函数来获取节点的方法,获取了一个节点要访问其子孙节点要么child半天要么就再来一个getElementB ...

  5. 【VOC格式xml文件解析】——Python

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/4/26 12:49 # @Author : @linlianqin # @S ...

  6. dom4j工具类_基于DOM4J的XML文件解析类

    XML文件解析分四类方式:DOM解析:SAX解析:JDOM解析:DOM4J解析.其中前两种属于基础方法,是官方提供的平台无关的解析方式:后两种属于扩展方法,它们是在基础的方法上扩展出来的,只适用于ja ...

  7. XML文件解析-DOM4J方式和SAX方式

    最近遇到的工作内容都是和xml内容解析相关的. 1图片数据以base64编码的方式保存在xml的一个标签中,xml文件通过接口的方式发送给我,然后我去解析出图片数据,对图片进行进一步处理. 2.xml ...

  8. XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 查找校验xml文件中相同的节点属性值 java遍历文件夹解析XML

    XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 以及查找xml文件中相同的节点属性值 项目背景:这是本人实习中所碰到的项目,当时感觉很棘手, ...

  9. XML - XML学习/XML文件解析器(C++)实现

    XML - XML学习/XML文件解析器(C++)实现 XML概述 ​ XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识.它也是元标记语言,用于定义其他与特定领域有关的, ...

  10. android基础知识13:AndroidManifest.xml文件解析【转载】

    注:本文转载于:http://blog.csdn.NET/xianming01/article/details/7526987 AndroidManifest.xml文件解析. 1.重要性 Andro ...

最新文章

  1. POJ - 1986 Distance Queries 倍增求LCA
  2. 朋友开网店 做个抓取数据的小程序
  3. vba php,VBA
  4. 认识文本和文本文件 字符流操作的是文本文件
  5. python获取当前服务器路径_利用Python实现对Web服务器的目录探测
  6. 语音识别(Web Speech API)
  7. 结构体C语言王者归来
  8. python与vb可以互换吗_VB转换为Python:在线把VB代码转为Python
  9. VOCALOID3洛天依新手入门教程(一)
  10. 可编程逻辑控制器类毕业论文文献都有哪些?
  11. Pytorch安装找不到指定的模块\torch\lib\asmjit.dll
  12. 小心你的网站让百度蜘蛛抓取不到
  13. LeetCode1-580题汇总
  14. 递归,举几个简单的例子
  15. 神雕侠侣服务器维修时间,神雕侠侣什么时候更新_神雕侠侣更新维护了什么内容_快吧游戏...
  16. 跟着架构师学习大型网站架构的技术细节:前端架构需要解决的问题
  17. 人工智能实战2019 第二次作业 焦宇恒
  18. mint系统用wine打开exe文件
  19. 数字签名(代码签名)流程和数字签名的验证
  20. 第九章:MATLAB:程序设计(一)M文件

热门文章

  1. ICLR2021有什么值得关注的投稿?这些高赞论文先睹为快
  2. 【笔记】双线性池化(Bilinear Pooling)详解、改进及应用
  3. 【论文阅读】EMNLP 2018 基于自适应的多轮解码机制的神经机器翻译模型
  4. bug5-os.environ无效
  5. python基础3-运算符总结_位操作符_优先级问题
  6. C#类的定义与对象使用
  7. PostgreSQL概述
  8. 1.10 Linux文件目录用户与用户组修改
  9. Python中函数的形参与按值传递之间的关系
  10. PGM:贝叶斯网的参数估计