请教:下图的xml怎么解析并把数据放到listview里 androidwebserviceXML 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以看一下DOM,SAX,pull三种xml解析方式 android都用的是pull解析器,下面这个链接应该能帮到你。(请着重看PULL文章讲得很清楚)http://blog.csdn.net/liuhe688/article/details/6415593 gson是用于json格式的吧?不过你这个感觉不像标准的xml因为第一个标签<ArrayOfAnyType>并没有闭合标签 类似这样:static public List<DataKlb> ParseXmlQueryKlb(String xmlStr){ List<DataKlb> list = null; DataKlb data = null; XmlPullParser parser = Xml.newPullParser(); try { parser.setInput(new StringReader(xmlStr)); int event = parser.getEventType(); while(event != XmlPullParser.END_DOCUMENT){ String nodeName=parser.getName(); switch (event) { case XmlPullParser.START_DOCUMENT: list = new ArrayList<DataKlb>(); break; case XmlPullParser.START_TAG: if("DrvPreasign".equalsIgnoreCase(nodeName)){ data = new DataKlb(); } else if("ID".equalsIgnoreCase(nodeName)){ data.id = parser.nextText(); } else if("Name".equalsIgnoreCase(nodeName)){ data.name = parser.nextText(); } break; case XmlPullParser.END_TAG: if("DrvPreasign".equalsIgnoreCase(nodeName)){ list.add(data); } break; default: break; } event = parser.next(); } return list; } catch (XmlPullParserException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } 安卓怎么开发 求助下 安卓开发书中得例子打开指定网页但是打不开 Android WebView问题 长按home和桌面图标启动的区别? 大家注意过android的充电动画吗? 长按menu键默认出现的弹出输入法界面如何取消? [求助]怎样在一个SQL数据库里创建多个表 android 应用做轮流播放图片广告控件 哪有 ndk 开发比较好的教程啊? 布局问题 当调用系统发短信界面后。。。。。。 如何设置application和activity的长宽为0
http://blog.csdn.net/liuhe688/article/details/6415593
不过你这个感觉不像标准的xml因为第一个标签<ArrayOfAnyType>并没有闭合标签
List<DataKlb> list = null;
DataKlb data = null;
XmlPullParser parser = Xml.newPullParser();
try {
parser.setInput(new StringReader(xmlStr));
int event = parser.getEventType();
while(event != XmlPullParser.END_DOCUMENT){
String nodeName=parser.getName();
switch (event) {
case XmlPullParser.START_DOCUMENT:
list = new ArrayList<DataKlb>();
break;
case XmlPullParser.START_TAG:
if("DrvPreasign".equalsIgnoreCase(nodeName)){
data = new DataKlb();
} else if("ID".equalsIgnoreCase(nodeName)){
data.id = parser.nextText();
} else if("Name".equalsIgnoreCase(nodeName)){
data.name = parser.nextText();
}
break;
case XmlPullParser.END_TAG:
if("DrvPreasign".equalsIgnoreCase(nodeName)){
list.add(data);
}
break; default:
break;
}
event = parser.next();
} return list;
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}