2011-12-01 60 views
-1

我知道如何用SAX解析器解析XML。我的XML是這樣的:如何使用相同的標籤名稱解析XML?

-<address_component> 
    <long_name>Chambers St</long_name> 
    <short_name>Chambers St</short_name> 
    <type>route</type> 
</address_component> 
-<address_component> 
    <long_name>Downtown</long_name> 
    <short_name>Downtown</short_name> 
    <type>neighborhood</type> 
    <type>political</type> 
</address_component> 

我的問題:當XML有兩個標籤具有相同的名稱,就像在這種情況下,「類型」,我的代碼只得到最後一個變量的值。在這種情況下,「類型」變得「政治化」,並跳過「鄰居」。

我該如何處理?

+6

你用來解析它的代碼會非常有幫助。 ;) – Tomalak

+0

我想從這個URL解析XML http://maps.googleapis.com/maps/api/geocode/xml?latlng=25.665393829345703,-80.29926147460938&sensor=true任何建議? – Maulik

回答

2

聽起來好像你的代碼並不是爲了處理多個type元素而設計的,所以它只會保存它遇到的最後一個元素。這是你的代碼的限制(你沒有顯示)。您需要重新編寫代碼以接受多個type元素,例如將遇到的每個type存儲到String[]數組中,而不是單個String變量。

0

考慮到,你確實使用SAX解析器,你的回調(startElement/endElement等)應該爲'type'元素激發。也許,如果你可以發佈一些代碼,問題會變得更加明顯。

+0

我想從此URL解析XML http://maps.googleapis.com/maps/api/geocode/xml?latlng=25.665393829345703,-80.29926147460938&sensor=true任何建議? – Maulik

相關問題