J'essaie de trier les documents XML en fonction de leurs nœuds. Qu'est-ce qu'une méthode de tri efficace?Comment trier les éléments XML en Java?
Répondre
Je ne suis pas au courant d'un analyseur XML qui fournit un tri des éléments prêts à l'emploi, puisque les éléments XML n'ont pas d'ordre de tri naturel. En effet, dans la spécification XMl, l'ordre de tri des éléments est important. Par conséquent, aucun code analysant un fragment arbitraire de XML ne devrait faire d'hypothèses sur l'ordre des éléments.
Si vous avez besoin d'éléments triés, vous devrez analyser le document XML en utilisant votre analyseur XML favori et les trier vous-même. Vous pouvez également trier le document en utilisant XSLT.
Vous pouvez trier les nœuds d'un document XML à l'aide XSLT sort
Une alternative à l'approche XSLT est d'écrire votre propre méthode utilitaire qui trie les enfants d'un noeud spécifié dans l'ordre décroissant ou ordre croissant en utilisant un comparateur spécifié.
public static void sortChildNodes(Node node, Comparator comparator, boolean descending) {
}
Je recommande fortement que vous apprenez XSLT car il est très bien adapté pour manipuler des documents XML, y compris le tri, etc. Java a un bon support pour runing XSLT sur les fichiers et les structures en mémoire dans le cadre de l'exécution norme bibliothèque.
L'utilisation de
<xsl:sort select="..."/>
est bien décrit à http://www.xml.com/pub/a/2002/07/03/transform.html
Merci pour votre suggestion, j'utilise java avec eclipse IDE. Alors, comment exécuter ces fichiers xsl. – thandar
Nommez vos fichiers XSLT avec le type de fichier "XSL", c'est-à-dire "test.xsl". Ensuite, vous pouvez faire un clic droit et choisissez "Exécuter en tant que" -> "Transformation XSL" pour faire une transformation xslt. De la documentation je comprends que si vous changez le processeur XSLT dans le panneau de préférences XSL à Xalan vous pouvez même déboguer le processus XSLT. J'utilise Eclipse JEE. Il se peut qu'il ne soit pas disponible dans les autres éditions Eclipse. –
- 1. Python XML et XPath pour trier les éléments
- 2. Trier les éléments par date en PHP?
- 3. Trier les éléments dans Django
- 4. Plone: Comment trier les éléments du dossier
- 5. Trier les éléments dans datatable
- 6. Objet Java aux éléments XML?
- 7. comment trier les données xml dans jQuery
- 8. as3 trier les données XML?
- 9. comment trier xml?
- 10. trier les éléments d'une vue de table dans les sections
- 11. Comment trier les chaînes qui contiennent des nombres en Java
- 12. Besoin d'aide pour trier les éléments
- 13. Trier les éléments filtrés par le tag
- 14. Comment puis-je trier les éléments vectoriels utilisant des éléments comme la clé en C++
- 15. Trier et réorganiser les éléments du tableau
- 16. Trier résultat solr en pondérant certains éléments
- 17. Saisir des valeurs dans des éléments XML en Java
- 18. Trier les éléments ListBox en utilisant Javascript/Jquery
- 19. éléments @attribute en XML
- 20. Trier les éléments dans une vue de tableau dans iphone
- 21. Sortie XML Java - indentation correcte pour les éléments enfants
- 22. trier le fichier XML en utilisant linq
- 23. xml extraire les éléments du parseur xml
- 24. XML en utilisant Java
- 25. Cloner les éléments de liste en Java
- 26. PHP - Trier les éléments du tableau en fonction des éléments d'un autre tableau :)
- 27. Comment trier un fichier XML en utilisant .NET?
- 28. Comment déclarer les éléments du tableau volatils en Java?
- 29. Comment trier les valeurs d'un HashMap en Java et conserver les entrées en double?
- 30. Comment trier les valeurs spécifiques à partir d'un fichier xml
Pouvez-vous nous montrer ce que votre document XML ressemble et comment vous le voulez trier? – dogbane
Ecrivez-vous le document, ou vous avez un document prêt et devez le sortir? La structure est-elle plate? Voulez-vous trier uniquement les noeuds de niveau supérieur? Par quels critères - nom de noeud, attributs, contenu de noeud? – Bozho
Je veux dire que je veux trier les éléments XML dans Java. Par exemple, dans une donnée bibliographique, le document xml est trié par éléments/nœuds "title". – thandar