gpt4 book ai didi

android - 无法使用 XML 解析从 XML 中获取内部节点列表数据

转载 作者:行者123 更新时间:2023-11-30 02:31:22 25 4
gpt4 key购买 nike

我试图多次获取 FL 标签,但是当我尝试内部节点列表时,它只获取第一个项目。有关更多信息,请参阅我的输出。这是我从网络服务得到的 XML 数据

<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>

这是我在 Activity 中使用的代码

public class AndroidXMLParsingActivity extends ListActivity {


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

XMLParser parser = new XMLParser();
String xml = parser.getXmlFromUrl(AppConfig.URL); // getting XML
Document doc = parser.getDomElement(xml); // getting DOM element

NodeList nodeList = doc.getElementsByTagName("row");

for (int i = 0; i < nodeList.getLength(); i++) {

Node node = nodeList.item(i);

Element playlistElement = (Element) node;

NodeList title = playlistElement.getElementsByTagName("FL");

for (int kl = 0; kl < title.getLength(); kl++) {

if (title.item(0).getChildNodes().item(0) != null) {

Element nameElement = (Element) title.item(0);
title = nameElement.getChildNodes();
Log.v("name===>", ((Node) title.item(0)).getNodeValue());

}
}

}

}
}

这是输出:

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

请帮帮我....................

最佳答案

为什么不使用 XmlPullParser用于解析 XML?我从未使用过您的版本,但在我看来 XmlPullParser 会做得更好,因为您告诉它专注于 START_TAG(例如)然后写下名称您想要找到的标签(您的示例中的 FL)。

XPP 将做的是,他将通读整个 XML 文档并搜索给定的 START_TAG。一旦找到,您就可以在 switch 案例中使用它做任何您想做的事情。

关于android - 无法使用 XML 解析从 XML 中获取内部节点列表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27291740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com