Mam plik XML w następujący sposób:JAVA element.getElementsByTagName Ogranicz do górnego poziomu
<rootNode>
<link>http://rootlink/</link>
<image>
<link>http://imagelink/</link>
<title>This is the title</title>
</image>
</rootNode>
Kod XML Java za pomocą DOM przedstawia się następująco:
NodeList rootNodeList = element.getElementsByTagName("link");
Będzie mi dać wszystkie z elementy "link", w tym najwyższy poziom i jeden wewnątrz węzła "image".
Czy istnieje sposób, aby po prostu uzyskać znaczniki "link" dla rootNode w ramach jednego poziomu, a nie dwa takie jak w przypadku łącza obrazu? To znaczy, chcę tylko link "http://rootlink/".
Myślałem o JDOM, ale napisałem dużo kodu z DOM. Muszę spojrzeć na poziom wysiłku, aby przekonwertować. Ale czy nie można tego zrobić za pomocą DOM? – user152090
Nie sądzę, jest to wygodny sposób to zrobić. ale możesz utworzyć metodę, która pobiera wywołania getChildNodes(), sprawdza nazwę każdego elementu, dodaje elementy do nowej NodeList, a następnie zwraca NodeList. Użyj tej metody wszędzie tam, gdzie potrzebujesz uzyskać nazwane dzieci. Albo ugryź bullet i używaj JDom, z którym dużo łatwiej się uporać. –
Dziękuję. Przyjrzę się różnym proponowanym rozwiązaniom. Dziękuję za szybką odpowiedź. – user152090