1
我已經搜索並在getElementsByTagName上獲得了大量的結果,當您指定標記但沒有針對我的特定問題時。想要使用getElementsByTagName()的特殊值(*)
在本文檔中,它說
參數:
標記名 - 標籤,以匹配的名稱。特殊值「*」 匹配所有標籤。對於XML,標記名參數區分大小寫, ,否則取決於 使用中標記語言的區分大小寫。
我對此的理解是,如果我將參數設置爲「設置」,它將返回帶有設置標記的所有元素。這工作正常,但是,這兩個聲明都給我錯誤,我不明白爲什麼?
NodeList nodeList = document.getElementsByTagName(*);
NodeList nodeList = document.getElementsByTagName("*");
我只是不正確地理解文檔或?
第一條語句給了我一個語法錯誤,第二個給了我一個NullPointerException
public static void main(String args[]) throws Exception {
String path = "path";
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document document = db.parse(path);
NodeList nodeList = document.getElementsByTagName("setting");
String value = null;
if (nodeList.getLength() > 0 && nodeList.item(0).hasChildNodes()) {
for(int x=0, size= nodeList.getLength(); x<size; x++) {
System.out.println(nodeList.item(x).getAttributes().getNamedItem("name").getNodeValue());
value = nodeList.item(x).getFirstChild().getNodeValue();
System.out.println(value);
}
}
}
}
「_give me errors_」您需要更具體。 (第一個很明顯 - 不會編譯)。 – jlordo
道歉。我編輯了問題以包含更多詳細信息 – Killian
Jeez,現在我看起來很愚蠢 - 我刪除了我的答案。哪一行是NullPointerException? –