2010-09-11 102 views
3

我使用DOM解析器來挖掘數據。問題是我無法設法獲取裏面的「url =」「length」和「type」標記「enclosure」標籤使用包含多個屬性的標記解析XML [Java,DOM]

<item> 
     <title>blah blah</title> 
     <description>blah blah</description> 
     <enclosure url="THEURL" length="LENGTH" type="TYPE" /> 
</item> 

下面是我使用的代碼:任何人都可以指向正確的方向嗎?

for (int t = 0; t < nList.getLength(); t++) { 
       Node nNode = nList.item(t); 
       if (nNode.getNodeType() == Node.ELEMENT_NODE) { 

        Element eElement = (Element) nNode; 

        System.out.println("title : " 
          + getTagValue("title", eElement)); 
        System.out.println("description : " 
          + getTagValue("description", eElement));       

        for (int t2 = 0; t2 < nList2.getLength(); t2++) {       
        Node nNode2 = nList2.item(t2);     
        Element eElement2 = (Element) nNode2; 
        System.out.println("url: " 
          + getTagValue("url", eElement2)); 
        } 
       } 
     } 

private static String getTagValue(String sTag, Element eElement) { 
    NodeList nlList = eElement.getElementsByTagName(sTag).item(0) 
      .getChildNodes(); 
    Node nValue = (Node) nlList.item(0); 

    return nValue.getNodeValue(); 
} 

回答

6

查找Element.getAttributes()方法將所有屬性檢索爲數組。 Element.getAttributeNode(String name)會給你一個特定的屬性。