XML文件解析工具类pull解析

jopen 10年前
    public class XMLParser {            /**            * 解析服务器的配置文件            * @param is 从服务器获得配置的文件的流            */            public static UpdateInfo parser(InputStream is){                UpdateInfo info=null;                try {                    //获得pull解析实例                    XmlPullParserFactory factory=XmlPullParserFactory.newInstance();                    XmlPullParser xmlParser=factory.newPullParser();                //初始化解析器                    xmlParser.setInput(is, "UTF-8");                    int eventType=xmlParser.getEventType();                    //文档没有解析完                    while(eventType!=XmlPullParser.END_DOCUMENT){                        switch (eventType) {                        case XmlPullParser.START_TAG:                            if(xmlParser.getName().equals("info")){                                info=new UpdateInfo();                                                            }else if(xmlParser.getName().equals("version")){                                info.setVersion(xmlParser.nextText());                                                            }else if(xmlParser.getName().equals("desc")){                                info.setDesc(xmlParser.nextText());                            }else if(xmlParser.getName().equals("apkurl")){                                info.setApkUrl(xmlParser.nextText());                            }                            break;                                }                        eventType=xmlParser.next();                                                                    }                                    } catch (XmlPullParserException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                } catch (IOException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }                                return info;                            }                }  
对应的update.xml
    <?xml version="1.0" encoding="utf-8"?>        <info>        <version>2.0</version>        <description>xxxxxxxxxx</description>        <apkurl>http://192.168.253.1:8080/xxxxxxx.apk</apkurl>        </info>