1.普通型

<?xml version=”1.0″ ?><statuses><status><source1>a</source1><source2>a</source2><source2>a</source2></status><statuses></xml>

try{xpp.setInput( new StringReader ( “xml string” ) );XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();int eventType = parser.getEventType();while (eventType != XmlPullParser.END_DOCUMENT) {if (eventType == XmlPullParser.START_TAG) {String name = parser.getName();Log.v(“tag”,parser.getName()+”=”+parser.next());}eventType = parser.next();}} catch (XmlPullParserException e) {} catch (Exception e) {}

2.嵌套子类

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”no”?><statuses><status> <source1>a</source1> <source2>a</source2> <source2>a</source2> <user>   <source1>a</source1>   <source2>a</source2>   <source2>a</source2> </user></status><status> <source1>a</source1> <source2>a</source2> <source2>a</source2> <user>   <source1>a</source1>   <source2>a</source2>   <source2>a</source2> </user></status><statuses></xml>

try{XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser(); xpp.setInput( new StringReader ( xml string ) );parser.next();parser.require(XmlPullParser.START_TAG, null, “statuses”);while (parser.nextTag() != XmlPullParser.END_TAG) {parser.require(XmlPullParser.START_TAG, null, “status”);for (int i=0;i<3;i++){parser.nextTag();Log.v(“tag”,parser.getName()+”=”+ parser.nextText());}while (parser.nextTag() != XmlPullParser.END_TAG) {parser.require(XmlPullParser.START_TAG, null, “user”);while (parser.nextTag() != XmlPullParser.END_TAG) {String name = parser.getName();String text2 = parser.nextText();Log.v(“tag”,”text2″+text2);parser.require(XmlPullParser.END_TAG, null, name);}parser.require(XmlPullParser.END_TAG, null, “user”);}parser.require(XmlPullParser.END_TAG, null, “status”);}parser.require(XmlPullParser.END_TAG, null, “statuses”);parser.next();parser.require(XmlPullParser.END_DOCUMENT, null, null);// global.userinfo.dump();} catch (XmlPullParserException e) {} catch (Exception e) {}
最里面那个可以满足 <user>也是循环. 如果<user>不循环. 可以使用.
for (int i=0;i<3;i++){parser.nextTag();Log.v(“tag”,parser.getName()+”=”+ parser.nextText());}





更多相关文章

  1. Android的Handler机制详解3_Looper.looper()不会卡死主线程
  2. Android(安卓)Vibrator使用
  3. Android,LIstView中的OnItemClick点击无效的解决办法
  4. Android(安卓)View的介绍和使用
  5. android scrollview中嵌套expandablelistview
  6. android读取工程里文件并显示在界面
  7. android:Handler开启线程定时循环
  8. Android(安卓)解决 RecyclerView 嵌套 ScrollView 数据显示不全
  9. android水平循环滚动控件

随机推荐

  1. Android(安卓)listview指定垂直滑动距离
  2. Window窗口机制——WindowManager,ViewRoo
  3. 使用Android(安卓)Studio创建Android项目
  4. Android离线身份证等图片文字识别
  5. Android高仿iOS Messages聊天气泡
  6. React Native的ActionSheet实现
  7. android 点击获取验证码显示倒计时并不可
  8. Android(安卓)系统启动流程总结
  9. apk、dex、odex梳理
  10. Android(安卓)Studio使用技巧