我有一个网络服务.asmx
,在消费时会以下列形式给出回复:
<lData>
<name>...</name>
<posx>..</posx>
<posy>...</posy>
</lData>
我使用Ksoap2
来使用Android
中的网络服务,我将回复视为string
:
anyType {
lData = anyType{
name=....;
posx=....;
posy=....
;}
;}
所以,我从我的网络服务中获取了正确的数据,但我不知道如何正确解析它。 我想找到一种迭代不同节点的方法。
我尝试使用SAXParser
,但似乎无法理解我应该使用的是什么,而不是url
。在tutotirals中,我跟随url
上的xml文件的链接,但我的url
只是部分“完成”,因为我需要首先使用Web服务。
MyXMLHandler myXMLHandler = new MyXMLHandler();
xr.setContentHandler(myXMLHandler);
xr.parse(new InputSource(sourceUrl.openStream()));
这是我应该使用的东西,还有另一个openStream吗?
感谢您的帮助!
答案 0 :(得分:2)
SAXParser想要一个InputStream来解析。我想你是说你要解析一串xml?为此,您需要将String转换为输入流:
InputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));