在本节的内容中,将通过一个具体实例的实现过程,来综合演示使用SAX、DOM和PULL技术解析XML数据的具体过程。
本实例的具体实现流程如下。
(1)编写主界面的布局文件main.xml,在主界面中插入三个Button按钮。具体实现代码如下。
执行后的主界面效果如图6-15所示。
(2)编写列表界面文件list.xml,功能是列表显示解析后的结果。具体实现代码如下。
图6-15 执行效果
(3)编写XML文件channels.xml,本实例的目的就是使用SAX、DOM和PULL技术解析此XML文件中的数据。文件channels.xml的具体实现代码如下。
(4)编写对应的XML实体对象文件channel.java,具体实现代码如下。
(5)编写文件XMLParserActivity.java,用于响应单击主界面三个按钮的事件处理程序。具体实现代码如下。
(6)单击“SAX方式解析”按钮后,触发SAXPraserDemo列表以显示结果,此功能的实现文件是SAXPraserDemo.java,具体实现代码如下。
在上述代码中,调用文件SAXPraserHelper.java,此实现了具体的解析工作,文件具体实现代码如下。
(www.xing528.com)
从本步骤的实现过程可以看出,使用SAX解析XML的基本步骤如下。
□实例化一个工厂SAXParserFactory。
□实例化SAXPraser对象,创建XMLReader解析器。
□实例化handler处理器。
□解析器注册一个事件。
□读取文件流。
□解析文件。
(7)单击“PULL方式解析”按钮后触发PullPraserDemo列表显示结果,此功能的实现文件是PullPraserDemo.java,具体实现代码如下。
(8)单击“DOM方式解析”按钮后,触发DomPraserDemo列表以显示结果,此功能的实现文件是DomPraserDemo.java,具体实现代码如下。
在上述代码中,调用文件DomParserHelper.java,此实现了具体的解析工作。文件具体实现代码如下。
从本步骤的实现过程可以看出,使用DOM解析XML的基本步骤如下。
□调用DocumentBuilderFactory.newInstance()方法得到DOM解析器工厂类实例。
□调用解析器工厂实例类的newDocumentBuilder()方法得到DOM解析器对象。
□调用DOM解析器对象的parse()方法解析XML文档得到代表整个文档的Document对象。
到此为止,整个实例的实现过程讲解完毕。因为是解析的同一个目标文件,所以单击任意一个按钮后都会显示一样的效果,具体效果如图6-16所示。
图6-16 解析后的效果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。