2017-03-29 177 views
0

下面是一個包含一個指定的文件夾結構的XML文件中的字符串XML遍歷查找節點名稱

 String xml ="<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + 
        "<folder name=\"c\">" + 
         "<folder name=\"program files\">" + 
          "<folder name=\"uninstall information\" />" + 
         "</folder>" + 
         "<folder name=\"users\" />" + 
        "</folder>"; 

如果用戶輸入的方法必須返回該文件夾的名稱(以下文件夾的首字母是它的一部分方法我試過了)

DocumentBuilder builder = 
    DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
      InputSource src = new InputSource(); 
      src.setCharacterStream(new StringReader(xml)); 
      Document doc = builder.parse(src);   
      List<String> listObj = new ArrayList<String>(); 
      if(doc.getElementsByTagName("folder").item(0) != null){ 
    System.out.println(doc.getElementsByTagName("folder").item(0).getNodeValue());} 

但在我的方法中,我總是得到空。我如何迭代並找出文件夾名稱?

回答

1

name是文件夾標籤的屬性,所以你必須使用下面的代碼:

System.out.println(doc.getElementsByTagName("folder").item(0).getAttributes().getNamedItem("name").getNodeValue()); 
+0

是的,先生......你現在它顯示正確的值!謝謝 – Suyash