android XmlPullParser解析XMl文件

1)首先要把带解析的文件放到与包平行的路径下

2)找到XMl文件,创建XML解析,并设置

        InputStream is = getClassLoader().getResourceAsStream("xml_parser22.xml");
        XmlPullParser xpp = Xml.newPullParser();
        try {
            xpp.setInput(is, "utf-8");

3)设置循环

    int event = xpp.getEventType();
    while( event != XmlPullParser.END_DOCUMENT ) {//只要不等于文件的结尾,就继续循环
         switch(event){
            case XmlPullParser.START_TAG:
               break;
             case XmlPullParser.END_TAG:
               break;
             }
          event = xpp.next();   
    }

4)在START_TAG分支要做XML解析:

                    if( xpp.getName().equals("persons") ) {//这个是根标签
                        persons = new ArrayList<Person>();//在这个分支要创建解析出来的数据的存储list
                    } else if(xpp.getName().equals("person")) {//这个是要解析的主体类 的标签
                        p = new Person();
              //<person id="22"> 获取标签内部的属性值22 p.setId(Integer.parseInt(xpp.getAttributeValue(
0))); } else if( xpp.getName().equals("name") ) {
               //<name>NEW23</name> 活取标签外部的值 NEW23 p.setName(xpp.nextText()); }
else if(xpp.getName().equals("age")) {               p.setAge(Integer.parseInt(xpp.nextText())); }

5) 在END_TAG分支要把获取到的数据放入list

                    if( xpp.getName().equals("person") ) {
                        persons.add(p);
                        p = null;
                    }

 

posted @ 2015-03-14 22:10  firerdong  阅读(145)  评论(0编辑  收藏  举报