2
我從網絡服務中下載了XML
文件,我遇到的問題是我無法在循環之外正確顯示數據。從Java中的Hashmap數據循環訪問數組
的XML
格式設置如下:
<section>
<outage>
<dummydata>test</dummydata>
</outage>
<outage>
<dummydata>test2</dummydata>
</outage>
</section>
<section>
<outage>
<dummydata>test3</dummydata>
<outage>
</section>
注意某些部分可以有一個以上的停電。正如你可以看到下面的計數是正確的,但在一個停電是從4
01-24 22:54:49.176: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.176: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.176: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.176: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.176: I/System.out(1924): Outage Count per sect 4
01-24 22:54:49.186: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.186: I/System.out(1924): Outage Count per sect 1
01-24 22:54:49.196: I/System.out(1924): Outages : 763674
,這是做所有的工作代碼
for (int j = 0; j < arrPolygons.size(); j++) {
if (isPointInPolygon(point, arrPolygons.get(j).getPoints())) {
for (int outageInfo = 0; outageInfo < nodeList.getLength(); outageInfo++) {
outageData = new LinkedList<HashMap<String, String>>();
Node ouageInfoNode = nodeList.item(outageInfo);
Element ouageInfoElement = (Element) ouageInfoNode;
NodeList ouageInfoList = ouageInfoElement.getElementsByTagName("Outage");
System.out.println("Outage Count per sect "+ouageInfoList.getLength());
for (int outages = 0; outages < ouageInfoList.getLength(); outages++) {
Node outageNode = ouageInfoList.item(outages);
Element outageDataElement = (Element) outageNode;
NodeList outageDataList =outageDataElement.getElementsByTagName("outagenum");
outageDataElement = (Element) outageDataList.item(0);
outageDataList = outageDataElement.getChildNodes();
outagenum = ((Node) outageDataList.item(0))
.getNodeValue();
//This is what I want to loop
HashMap<String, String> map = new HashMap<String, String>();
map.put("outagenum", outagenum);
outageData.add(outages, map);
}
}
Toast.makeText(MainActivity.this, "Inside " + arrPolygons.get(j).getId()+" "+ outageData.get(j), Toast.LENGTH_LONG).show();
System.out.println("Outages : " + outageData.get(0));
}
}
}
}
我的成果應該看起來像
Index 0 - {test,test2}
Index 1 - {test3}
有人可以告訴我在這個循環中我做錯了什麼嗎?
我這樣做,現在是指數0-2,有關樣本是我需要它具有多個值爲零顯示指數0-1。想法? – Dwill