Comment lire et analyser un fichier XML en Java?



Cet article sur l'analyseur XML Java vous aidera à comprendre ce qu'est un analyseur XML et comment analyser un fichier XML à l'aide de l'analyseur dom en Java.

XML, langage de balisage extensible est un langage de balisage qui définit un ensemble de règles pour coder des documents dans un format lisible. Analyse XML fait référence au passage à travers un document XML pour accéder ou modifier des données. Une Analyseur XML fournit la fonctionnalité requise pour accéder ou modifier des données dans un document XML. Dans cet article, explorons Analyseur XML en détail.

Qu'est-ce que XML Parser?

La Analyseur XML est une bibliothèque de logiciels ou un package qui fournit une interface permettant aux applications clientes de travailler avec des documents XML. Il vérifie le format correct du document XML et valide également les documents XML.





Le diagramme suivant montre comment l'analyseur XML interagit avec les documents XML:

analyseur XML - Edureka Vous pouvez considérer la validation comme une autre étape au-delà de l'analyse. Comme les composants du programme sont identifiés lors de l'analyse, un analyseur de validation peut les comparer avec le modèle établi par la DTD ou le schéma, pour vérifier qu'ils sont conformes.



Analyseur XML JAVA

Le composant fondamental du développement XML est l'analyse XML. L'analyse XML pour Java est un composant XML autonome qui analyse un document XML (et parfois aussi un DTD ou un schéma XML autonome) afin que le programme utilisateur puisse le traiter. La figure ci-dessous montre un document XML comme entrée de l'analyseur XML pour

  • Un document XML est envoyécomme entrée de l'analyseur XML pour Java
  • L'interface de l'analyseur DOM ou SAX analyse le document XML
  • Le XML analysé est ensuite transféré vers l'application pour un traitement ultérieur

L'analyseur XML pour Java peut également inclure un processeur de transformation XSL (XSLT) intégré pour transformer des données XML à l'aide de feuilles de style XSL. En utilisant le processeur XSLT, vous pouvez facilement transformer des documents XML de XML en XML, de XML en HTML ou virtuellement en tout autre format basé sur du texte.



Java fournit de nombreuses options pour analyser les documents XML.SCertains des analyseurs XML Java couramment utilisés sont:

  1. Analyseur DOM
  2. Analyseur SAX
  3. Analyseur StAX
  4. JAXB

Dans cet article, voyons comment analyser un fichier XML à l'aide de l'analyseur DOM.

Analyseur XML Java - DOM

JUGEMENT signifie Modèle d'objet de document. DOM Parser est l'analyseur XML Java le plus simple à implémenter et à apprendre. Il analyse un document XML entier, le charge en mémoire et construit un représentation du document.Prenons un exemple simple pour comprendre le concept.

À des fins de démonstration, nous utiliserons un fichier nommé Employés.xml . Dans le fichier, chaque employé a un identifiant unique, son prénom et son nom, son âge et son salaire et les employés sont séparés par leur identifiant.

Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

Aussi, afin de capturer la notion d'employé, nous créons sa classe Java respective, appelée Employee.java comme indiqué ci-dessous:

package MyPackage public class Employee {private String ID private String Firstname private String Lastname private int age private double salaire public Employee (String ID, String Firstname, String Lastname, int age, double salaire) {this.ID = ID this.Firstname = Firstname this.Lastname = Nom this.age = age this.salary = salaire} @Override public String toString () {return ''}}

Analyser un fichier XML à l'aide de l'analyseur DOM

Le modèle d'objet de document (DOM) fournit des API qui vous permettent de créer, modifier, supprimer et réorganiser les nœuds selon vos besoins. L'analyseur DOM analyse l'ensemble du document XML et charge le contenu XML dans une structure arborescente. En utilisant le Nœud et NodeList classes, nous pouvons récupérer et modifier le contenu d'un fichier XML.

Un échantillon qui charge le contenu d'un fichier XML et imprime son contenu est illustré ci-dessous:

package MyPackage import java.io.File import java.io.IOException import java.util.ArrayList import java.util.List import javax.xml.parsers.DocumentBuilder import javax.xml.parsers.DocumentBuilderFactory import javax.xml.parsers.ParserConfigurationException import org.w3c.dom.Document import org.w3c.dom.Element import org.w3c.dom.Node import org.w3c.dom.NodeList import org.xml.sax.SAXException public class DomParserExample {public static void main (String [] args) jette ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Charge le document XML d'entrée, analyse-le et renvoie une instance de // Classe de document. Document document = builder.parse (new File ('Employees.xml')) Liste des employés = new ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () for (int i = 0 i

L'exécution du code se déroule comme suit:

  • Tout d'abord, vous devez importer des packages d'analyseur dom dans l'application
  • La prochaine étape consiste à créer le DocumentBuilder objet
  • Lisez le fichier XML dans l'objet Document.
  • Analyser et stocker le fichier XML dans une instance de la classe Document
  • Lorsque vous trouvez un nœud de type Node.ELEMENT_NODE , récupère toutes ses informations et les stocke dans une instance de la classe Employee
  • Enfin, imprimez les informations de tous les employés stockés

Production

 

C'est ainsi que vous pouvez analyser un fichier XML à l'aide de l'analyseur DOM. L'analyseur DOM a ses avantages et ses inconvénients.

Avantages et inconvénients de l'analyseur DOM

Avantages

  • L'API est très simple à utiliser
  • Il prend en charge les opérations de lecture et d'écriture
  • Préféré lorsqu'un accès aléatoire à des parties largement séparées d'un document est requis

Désavantages

  • C'est une mémoire inefficace. Comme lela taille du fichier augmente, ses performances se détériorent et consomment plus de mémoire
  • Comparativement plus lent que les autres analyseurs XML disponibles en Java

Ceci nous amène à la fin de cet article «Java XML Parser».

Assurez-vous de pratiquer autant que possible et inversez votre expérience.

Vérifiez par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. Nous sommes là pour vous aider à chaque étape de votre voyage, pour devenir une autre question d'entrevue java, nous proposons un programme conçu pour les étudiants et les professionnels qui souhaitent devenir développeur Java.

différence entre le remplacement et la surcharge

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de cet «analyseur XML Java» article et nous vous répondrons dans les plus brefs délais.