zoukankan      html  css  js  c++  java
  • 【安卓7】XML文件解析——PULL解析

    PULL解析

            PULL ——比DOM和SAX使用更方便

    PULL解析相关类/接口

             解析XML——包:org.xmlpull.vl

    1. XmlPullFactory类:解析器工厂类,用于创建解析器对象
    2. XmlPullParser类:解析器类,用于解析XML文档

    PULL解析相关方法

    事件代码及方法

    类型

    描述

    public static final int START_DOCUMENT

    常量

    文档开始

    public static final int END_ DOCUMENT

    常量

    文档结束

    public static final int START_TAG

    常量

    元素开始

    public static final int END_TAG

    普通

    元素结束

    public static final int COMMET

    普通

    注释

    public static final int TEXT

    普通

    元素内容

    public abstract int getAttributeCount()

    普通

    取得元素的属性数量

    public abstract String getAttributeName(int index)

    普通

    取得指定索引的属性名称

    public abstract String getAttributeValue(int index)

    普通

    取得指定索引的属性内容

    public abstract int getEventType()

    普通

    取得事件代码

    public abstract String getName()

    普通

    取得当前元素的名称

    public abstract String getText()

    普通

    取得当前元素的内容

    public abstract int next()

    普通

    取得下一个操作事件代码

    public abstract int nextTag()

    普通

    取得下一个标记

    public abstract String nextText()

    普通

    取得当前节点的下一个文字

    public abstract void setInput(

       InputStream inputStream, String inputEncoding)

    普通

    设置数据的输入字节流

    public abstract void setInput(Reader in)

    普通

    设置数据的输入字符流

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    PULL解析代码

     1 // 创建解析器对象
     2 XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();
     3 // 读取资源文件
     4 InputStream is = getResources().openRawResource(R.raw.xml文件名);
     5 parser.setInput(is, "utf-8");     // 设置输入流对象和编码格式
     6 int type = parser.getEventType();     // 获取事件类型
     7 while (type != XmlPullParser.END_DOCUMENT) {
     8     String tagName = parser.getName();     // 获取标签名称
     9     if ("指定标签名".equals(tagName)&&type==XmlPullParser.START_TAG) {
    10             parser.next();
    11             String value = parser.getText();    //获取标签内容
    12             Toast.makeText(Pull0.this, value, 3000).show();    //信息提示框
    13      }
    14     //执行下一个标签
    15     type = parser.next();
    16 }
    PULL解析
  • 相关阅读:
    linux 删除某种规则命名的文件
    adb shell 出现 error :
    android 开发,多个线程共用一个handler
    android 开发上传图片遇到返回 FileNotFoundException
    mysql 的存储过程调试软件
    输入adb shell 时 提示error: more than one device and emulator
    高德开发 android 出现 key 鉴权失败
    android 中设置HttpURLConnection 超时并判断是否超时
    LINQ to SQL语句(3)之Count/Sum/Min/Max/Avg
    C# 如何判断数据是否为 NaN
  • 原文地址:https://www.cnblogs.com/leelee/p/6994684.html
Copyright © 2011-2022 走看看