タグを指定すると、 getElementsByTagName で検索して多くの結果が得られましたが、特定の質問については何もありませんでした。
ドキュメントでは、それは言う
パラメーター:
tagname - 照合するタグの名前。特別な値「*」は、すべてのタグに一致します。XML の場合、tagname パラメータは大文字と小文字を区別します。それ以外の場合は、使用中のマークアップ言語の大文字と小文字の区別に依存します。
これについての私の理解は、パラメーターを「設定」に設定すると、設定タグを持つすべての要素が返されるということです。これは問題なく動作しますが、これらのステートメントの両方でエラーが発生し、その理由がわかりません。
NodeList nodeList = document.getElementsByTagName(*);
NodeList nodeList = document.getElementsByTagName("*");
ドキュメントを正しく理解していないだけですか?
最初のステートメントで構文エラーが発生し、2 番目のステートメントで 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);
}
}
}
}