xml解析(一) XmlPullParser的使用
发布时间:2020-12-15 23:01:27 所属栏目:百科 来源:网络整理
导读:XmlPullParser是android自带的xml解析器 public static ArrayListTvUrl getChannelsData(InputStream is) {ArrayListTvUrl list = null;TvUrl tvurl = null;XmlPullParserFactory pullFactory;try {pullFactory = XmlPullParserFactory.newInstance();XmlPul
XmlPullParser是android自带的xml解析器 public static ArrayList<TvUrl> getChannelsData(InputStream is) { ArrayList<TvUrl> list = null; TvUrl tvurl = null; XmlPullParserFactory pullFactory; try { pullFactory = XmlPullParserFactory.newInstance(); XmlPullParser xmlPullParser = pullFactory.newPullParser(); if(is == null) { return null; } xmlPullParser.setInput(is,"UTF-8"); int eventType = xmlPullParser.getEventType(); while (eventType != XmlPullParser.END_DOCUMENT) { String tagName = xmlPullParser.getName(); switch (eventType) { case XmlPullParser.START_DOCUMENT: list = new ArrayList<TvUrl>(); break; case XmlPullParser.START_TAG: if("tv".equals(tagName)) { tvurl = new TvUrl(); } else if ("channelid".equals(tagName)) { tvurl.setid(xmlPullParser.nextText()); // Log.i(tvurl.getid()); } else if("name".equals(tagName)) { tvurl.setName(xmlPullParser.nextText()); // Log.i(tvurl.getName()); } else if("url".equals(tagName)) { String str = xmlPullParser.nextText(); tvurl.AddUrl(str); // Log.i(str); } break; case XmlPullParser.END_TAG: if ("tv".equals(tagName) && tvurl != null) { list.add(tvurl); } break; default: break; } eventType = xmlPullParser.next(); } } catch (XmlPullParserException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; }
xmlPullParser.nextText() 是解析xml某个标签的值。 xmlPullParser.getAttributeValue(0) 是解析xml某个标签下中属性值,0代表位置为0的属性 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |