J'ai un fichier XML comme suit:JAVA element.getElementsByTagName Limiter à haut niveau
<rootNode>
<link>http://rootlink/</link>
<image>
<link>http://imagelink/</link>
<title>This is the title</title>
</image>
</rootNode>
Le code XML Java utilisant DOM est comme suit:
NodeList rootNodeList = element.getElementsByTagName("link");
Cela me donnera tous les éléments "link" incluant le niveau supérieur et celui du noeud "image".
Existe-t-il un moyen d'obtenir simplement les balises "link" pour rootNode dans un niveau et pas deux comme c'est le cas pour le lien d'image? C'est, je veux juste le http://rootlink/ "lien".
J'ai pensé à JDOM, mais j'ai écrit beaucoup de code avec DOM. Je dois regarder le niveau d'effort pour convertir. Mais n'y a-t-il aucun moyen de le faire avec DOM? – user152090
Je ne pense pas qu'il existe un moyen pratique de le faire. mais vous pouvez créer une méthode qui reçoit les appels getChildNodes(), vérifie le nom de chaque élément, ajoute les éléments à une nouvelle NodeList, puis retourne la NodeList. Utilisez cette méthode partout où vous avez besoin d'obtenir les enfants nommés. Ou mordre la balle et utiliser JDom, je trouve que c'est beaucoup plus facile à gérer. –
Merci. Je vais regarder dans les différentes solutions proposées. Merci pour la réponse rapide. – user152090