Xml PULL解析

try {
            XmlPullParser pullParser=Xml.newPullParser();
            int eventType = pullParser.getEventType();
            ByteArrayInputStream bis=new ByteArrayInputStream(result.getBytes());
            pullParser.setInput(bis, "utf-8");
            boolean FLAG=true;
            String FLAGNAME="";
            MyData data=null;
            while(FLAG){
                switch (eventType) {
                     //开始接续文档
                    case XmlPullParser.START_DOCUMENT:
                        break;
                        //开始解析字节点
                    case XmlPullParser.START_TAG:
                            FLAGNAME=pullParser.getName();
                            if(FLAGNAME.equals("item")){
                               data=new MyData();

                            }
                        break;
                        //开始解析字节内容
                    case XmlPullParser.TEXT:
                        if(FLAGNAME.equals("title")){
                            data.setTitle(pullParser.getText());
                        }else if(FLAGNAME.equals("sub2")){
                            data.setSub2(pullParser.getText());
                        }else if(FLAGNAME.equals("img")){
                             data.setImg(pullParser.getText());

                        }else if(FLAGNAME.equals("reading")){
                             data.setReading(pullParser.getText());
                        }
                        else if(FLAGNAME.equals("bytime")){
                             data.setBytime(pullParser.getText());
                        }
                        
                        //结束解析子节点
                        break;
                    case XmlPullParser.END_TAG:
                        FLAGNAME=pullParser.getName();
                        if(FLAGNAME.equals("item")){
                            data2.add(data);
                        }
                        FLAGNAME="";
                        break;
                        //结束解析文档
                    case XmlPullParser.END_DOCUMENT:
                        FLAG=false;
                        break;

                    default:
                        break;
                    }
                    //开始下一条
                    eventType=pullParser.next();
                }
        } catch (XmlPullParserException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

猜你喜欢

转载自blog.csdn.net/qq_33983391/article/details/51538187
今日推荐