SAX,全称 Simple API for XML,是一种以事件驱动的 XMl API,即XML 简单应用程序接口。解析 XML 元素名称和内容的关键是当 SAX 解析 XML 时,把元素的名称和内容及时保存起来,同时 XML 中可能会有很多同名的元素,要把元素名称和内容对应起来。
与 DOM 不同,SAX 提供的访问模式是一种顺序模式,这是一种快速读写 XML 数据的方式。当使用 SAX 分析器对 XML 文档进行分析时,会触发一系列事件,并激活相应的事件处理函数,应用程序通过这些事件处理函数实现对XML文档的访问,因而SAX接口也被称作事件驱动接口。
SAX 解析 XML 的一般步骤:
1.创建 SAXParserFactory 的对象
2.创建 SAXParser 对象 (解析器)
3.创建一个 DefaultHandler 的子类,需要重写5个方法
1)解析xml文档开始时调用
startDocument()
2)解析xml文档结束时调用
endDocument()
3)解析xml文档中的开始节点时调用
startElement(String uri, String localName, String qName, Attributes attributes)
4)解析xml文档中的结束节点时调用
endElement(String uri, String localName, String qName)
5)解析xml文档中的节点中的文本值时调用
characters(char[] ch, int start, int length)
- 调用 parse 方法
了解了SAX 解析 XML 的步骤,我们开始进行实战解析:
Defau