zoukankan      html  css  js  c++  java
  • android之xml数据解析(SAX)

    使用SAX事件驱动模型解析xml数据:

      sax的工作原理简单地说就是对文档进行顺序扫描,当扫描到文档(document)开始与结束、元素(element)开始与结束、文档(document)结束等地方时通知事件处理函数,由事件处理函数做相应动作,然后继续同样的扫描,直至文档结束。以下是创建SAX解析的步骤:

      1. 创建SAXParserFactory对象

        SAXParserFactory factory = SAXParserFactory.newInstance();

      2. 创建SAXReader对象

        SAXReader reader = factory.newwSAXParser().getXMLReader();

      3. 为XMLReader设置内容处理器,当读取xml文件时里面相应的函数会被调用。MyContentHandler这个类我们选择继承DefaultHandler并且实现相应的方法

        reader.setContentHandler(new MyContentHandler());

      4. 解析数据

        reader.parse(new InputSource(new StringReader(这就是xml数据,不管是网络上的还是本地的)));

    DefaultHandler类中部分方法的述解:namespaceURI是xml文件的命名空间;localName是不包含前缀的元素名;qName是包含前缀的元素名;attr就是属性,它相当于数组

      public void startElement(String namespaceURI , String localName , String qName , Attribute attr) throws SAXException {

      tagName = loaclName;

      if(localName.equal("元素名")){

      for(int i=0 ; i<attr.getLength() ; i++){

        System.out.print("输出属性名字:"+attr.getLocalName(i));

        System.out.print("输出属性值:"+attr.getValue(i));

        }

      }

      }

        

  • 相关阅读:
    flex布局中transform出错
    RabbitMQ系列之Centos 7安装RabbitMQ 3.6.1
    解决windows下FileZilla server中文乱码问题
    IIS 7.5 + PHP-5.6.3 + mysql-5.6.21.1
    C# 速编神器LinqPad(新版6.5)
    一个MySql Sql 优化技巧分享
    IIS反向代理/Rewrite/https卸载配置
    zerotier 远程办公方案
    一次Mysql连接池卡死导致服务无响应问题分析(.Net Mysql.Data 6.9.9)
    ExpressCache
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2411131.html
Copyright © 2011-2022 走看看