Ich habe eine XML-Datei wie folgt:JAVA element.getElementsByTagName nach oben einschränken Ebene
<rootNode>
<link>http://rootlink/</link>
<image>
<link>http://imagelink/</link>
<title>This is the title</title>
</image>
</rootNode>
Die XML-Java-Code DOM ist wie folgt:
NodeList rootNodeList = element.getElementsByTagName("link");
Das gibt mir all die "link" -Elemente einschließlich der obersten Ebene und der innerhalb des "image" -Knotens.
Gibt es eine Möglichkeit, nur die "Link" -Tags für rootNode innerhalb einer Ebene zu erhalten und nicht zwei, wie es bei der Bildverknüpfung der Fall ist? Das heißt, ich möchte nur die http://rootlink/ "Link".
Ich dachte über JDOM nach, aber ich habe viel Code mit DOM geschrieben. Ich muss mir das Maß an Aufwand ansehen, um zu konvertieren. Aber gibt es keine Möglichkeit, dies mit DOM zu tun? – user152090
Ich glaube nicht, dass es einen bequemen Weg gibt, es zu tun. Sie können jedoch eine Methode erstellen, die getChildNodes() aufruft, den Namen jedes Elements überprüft, die Elemente zu einer neuen NodeList hinzufügt und dann die NodeList zurückgibt. Verwenden Sie diese Methode überall dort, wo Sie die benannten untergeordneten Elemente benötigen. Oder beißt in die Kugel und benutze JDom, ich finde es viel einfacher damit umzugehen. –
Danke. Ich werde die verschiedenen vorgeschlagenen Lösungen betrachten. Danke für die schnelle Antwort. – user152090