zoukankan      html  css  js  c++  java
  • 解析XML

    Pull解析

    1、获取XmlPullParserFactory实例

      XmlPullParserFactory factory = XmlPullParserFactory.newInstanc();

    2、借助XmlPullparserFactory实例获取XmlPullParser对象

      XmlPullParser xmlPullParser = factory.newPullParser();

    3、调用setInput()解析数据

      xmlPullParserl.setInput(new StringReader(xmlData));

    4、调用getEvent()得到当前解析事件

      int eventType = xmlPullParser.getEventType();

    5、利用while循环解析

      while(eventType != XmlPullParser.END_DOCUMENT){

        String nodeName = xmlPullParser.getName();

        switch(eventType){

          case XmlPullParser.START_TAG:{

            if("id".equals(nodeName)){

              id = xmlPullParser.nextText();

            }else if("name".equals(nodeName)){

              name = xmlPullParser.nextText();

            }else if("version".equals(nodeName)){

              version = xmlPullParser.nextText();

            }

            break;

          }

        //完成解析某个节点

        case XmlPullParser.END_TAG:{

          if("app".equals(nodeName)){

            Log.d("MainActivity","id is"+id);

            Log.d("MainActivity","name is"+name);

            Log.d("MainActivity","version is"+version);

          }

          break;

        default:

          break;

      }

      eventType = xmlPullParser.next();

     }

    ......

    SAX解析

    1、创建一个类继承自DefaultHandler,并重写5个方法(startDocument()、startElement()、characters()、endElement()、endDocument())

    2、创建SAXParserFactory实例

      SAXParserFactory factory = SAXParserFactory.newInstance();

    3、通过factory创建XMLReader对象

      XMLReader xmlReader = factory.newSAXParser().getXMLReader();

    4、创建ContentHandler对象

      ContentHandler handler = new ContentHandler();

    5、将ContentHandler的实例设置到XMLReader中

      xmlReader.setContentHandler(handler);

    6、开始解析

      xmlParser.parse(new InputSource(new StringReader(xmlData)));

              

      

  • 相关阅读:
    1.JMeter===添加响应断言
    1.Linux下Git入门学习
    14.Selenium+Python使用火狐浏览器问题解决
    13.Selenium不再支持PhantomJS
    12.Selenium+Python案例 -- 今日头条(获取科技栏目的所有新闻标题)
    11.Selenium+Python案例--百度
    10.Selenium+Python+任务计划程序实现定时发送邮件
    The connection to adb is down and a sever error has occured的解决
    Eclipse与github整合完整版
    GIT命令整理
  • 原文地址:https://www.cnblogs.com/yl-saber/p/6421812.html
Copyright © 2011-2022 走看看