Android 无法使用XML解析从XML获取内部节点列表数据
我多次尝试获取FL标记,但当我尝试内部节点列表时,它仅获取第一项。有关更多信息,请参阅我的输出。这是我从web服务获得的XML数据Android 无法使用XML解析从XML获取内部节点列表数据,android,xml-parsing,android-xmlpullparser,Android,Xml Parsing,Android Xmlpullparser,我多次尝试获取FL标记,但当我尝试内部节点列表时,它仅获取第一项。有关更多信息,请参阅我的输出。这是我从web服务获得的XML数据 <response uri="/ats/private/xml/JobOpenings/getRecords"> <result> <JobOpenings> <row no="1"> <FL val="JOBOPENINGID"&g
<response uri="/ats/private/xml/JobOpenings/getRecords">
<result>
<JobOpenings>
<row no="1">
<FL val="JOBOPENINGID">
<![CDATA[ 100 ]]>
</FL>
<FL val="Published in website">
<![CDATA[ true ]]>
</FL>
<FL val="Modified by">
<![CDATA[ Admmin ]]>
</FL>
<FL val="Modified time">
<![CDATA[ Yesterday ]]>
</FL>
</row>
<row no="2">
<FL val="JOBOPENINGID">
<![CDATA[ 101 ]]>
</FL>
<FL val="Published in website">
<![CDATA[ true ]]>
</FL>
<FL val="Modified by">
<![CDATA[ Admin ]]>
</FL>
<FL val="Modified time">
<![CDATA[ 2 Days Ago ]]>
</FL>
</row>
<row no="3">
<FL val="JOBOPENINGID">
<![CDATA[ 102 ]]>
</FL>
<FL val="Published in website">
<![CDATA[ true ]]>
</FL>
<FL val="Modified by">
<![CDATA[ Admin ]]>
</FL>
<FL val="Modified time">
<![CDATA[ 2 Days Ago ]]>
</FL>
</row>
<JobOpenings>
<result>
</response>
请帮帮我………为什么不使用解析XML?我从未使用过您的版本,但在我看来,XmlPullParser
会做得更好,因为您告诉它关注START\u标记(例如),然后写下您想要找到的标记的名称(在您的示例中为FL)
XPP
将要做的是,他将通读整个XML文档并搜索给定的START\u标记。一旦找到,您可以在开关
盒内对其执行任何操作。您可能会覆盖循环中的标题:
if (title.item(0).getChildNodes().item(0) != null) {
Log.v("name===>", ((Node) title.item(0).getChildNodes()).getNodeValue());
}
谢谢现在我可以使用XmlPullParser从中获取数据,但仍然无法获取FL标记值现在我只能获取“昨天”,但我还需要值“修改时间”。尝试获取整个标记(START_标记),然后对其执行子字符串,因为他可能从该标记获取所有内容。获取“某物”从val=“something”
在START\u标签上使用,并且getName()
是“FL”。
12-04 15:56:08.694: V/name===>(3918): JOBOPENINGID 100
12-04 15:56:08.694: V/name===>(3918): JOBOPENINGID 101
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 102
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 103
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 107
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 108
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 118
12-04 15:56:08.704: V/name===>(3918): JOBOPENINGID 200
if (title.item(0).getChildNodes().item(0) != null) {
Log.v("name===>", ((Node) title.item(0).getChildNodes()).getNodeValue());
}