¿Cómo leer y analizar un archivo XML en Java?



Este artículo sobre el analizador XML de Java le ayudará a comprender qué es un analizador XML y cómo analizar un archivo XML utilizando el analizador dom en Java.

XML, lenguaje de marcado extensible es un lenguaje de marcado que define un conjunto de reglas para codificar documentos en un formato legible. Análisis XML se refiere a pasar por un documento XML para acceder o modificar datos. Un Analizador XML proporciona la funcionalidad necesaria para acceder o modificar datos en un documento XML. En este artículo, exploremos Analizador XML en detalle.

¿Qué es XML Parser?

los Analizador XML es una biblioteca de software o un paquete que proporciona una interfaz para que las aplicaciones cliente funcionen con documentos XML. Comprueba el formato adecuado del documento XML y también valida los documentos XML.





El siguiente diagrama muestra cómo el analizador XML interactúa con los documentos XML:

analizador xml - Edureka Puede pensar en la validación como otra etapa más allá del análisis. Como los componentes del programa se identifican durante el análisis, un analizador de validación puede compararlos con el patrón establecido por la DTD o el esquema, para comprobar que se ajustan.



Analizador XML JAVA

El componente fundamental del desarrollo XML es el análisis de XML. El análisis de XML para Java es un componente XML independiente que analiza un documento XML (y en ocasiones también un esquema XML o DTD independiente) para que el programa de usuario pueda procesarlo. La siguiente figura muestra un documento XML como entrada al analizador XML para

  • Se envía un documento XMLcomo entrada al analizador XML para Java
  • La interfaz del analizador DOM o SAX analiza el documento XML
  • El XML analizado se transfiere a la aplicación para su posterior procesamiento.

XML Parser para Java también puede incluir un procesador de transformación XSL (XSLT) integrado para transformar datos XML utilizando hojas de estilo XSL. Con el procesador XSLT, puede transformar fácilmente documentos XML de XML a XML, de XML a HTML o virtualmente a cualquier otro formato basado en texto.



Java proporciona muchas opciones para analizar documentos XML.SAlgunos de los analizadores XML de Java más utilizados son:

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

En este artículo, veamos cómo analizar un archivo XML utilizando el analizador DOM.

Analizador XML de Java - DOM

JUICIO representa Modelo de objetos de documento. DOM Parser es el analizador XML de Java más fácil de implementar y aprender. Analiza un documento XML completo, lo carga en la memoria y construye un representación del documento.Consideremos un ejemplo sencillo para comprender el concepto.

Para fines de demostración, usaremos un archivo llamado Empleados.xml . En el archivo, cada empleado tiene una identificación única, nombre y apellido, edad y salario y los empleados están separados por sus identificaciones.

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

Además, para capturar la noción de empleado, creamos su respectiva clase Java, llamada Employee.java Como se muestra abajo:

paquete MyPackage public class Empleado {private String ID private String Firstname private String Lastname private int age private doble salario public Employee (String ID, String Firstname, String Lastname, int age, double salario) {this.ID = ID this.Firstname = Firstname this.Lastname = Apellido this.age = edad this.salary = salario} @Override public String toString () {return ''}}

Analizar un archivo XML usando el analizador DOM

El Modelo de objetos de documento (DOM) proporciona API que le permiten crear, modificar, eliminar y reorganizar los nodos según sea necesario. El analizador DOM analiza todo el documento XML y carga el contenido XML en una estructura de árbol. Utilizando la Nodo y NodeList clases, podemos recuperar y modificar el contenido de un archivo XML.

Una muestra que carga el contenido de un archivo XML e imprime su contenido se muestra a continuación:

paquete 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.ParserConfiguration 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) throws ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Cargue el documento XML de entrada, analícelo y devuelva una instancia del // Clase de documento. Documento document = builder.parse (new File ('Employees.xml')) Lista de empleados = new ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () para (int i = 0 i

La ejecución del código ocurre de la siguiente manera:

  • Primero, necesita importar paquetes de analizador dom en la aplicación
  • El siguiente paso es crear DocumentBuilder objeto
  • Lea el archivo XML en el objeto Documento.
  • Analizar y almacenar el archivo XML en una instancia de la clase Document
  • Cuando encuentre un nodo de tipo Nodo.ELEMENT_NODE , recupera toda su información y la almacena en una instancia de la clase Empleado
  • Finalmente, imprima la información de todos los empleados almacenados

Salida

 

Así es como puede analizar un archivo XML utilizando el analizador DOM. El analizador DOM tiene sus ventajas y desventajas.

Ventajas y desventajas de DOM Parser

Ventajas

  • API es muy simple de usar
  • Admite operaciones de lectura y escritura
  • Preferido cuando se requiere acceso aleatorio a partes muy separadas de un documento

Desventajas

  • Es la memoria ineficiente. Como elel tamaño del archivo aumenta, su rendimiento se deteriora y consume más memoria
  • Comparativamente más lento que otros analizadores XML disponibles en Java

Esto nos lleva al final de este artículo sobre 'Analizador XML de Java'.

diferencia entre final finalmente y finalizar en java

Asegúrese de practicar tanto como sea posible y revertir su experiencia.

Revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. Estamos aquí para ayudarlo en cada paso de su viaje, para que, además de estas preguntas de la entrevista de Java, se convierta en un plan de estudios diseñado para estudiantes y profesionales que desean ser desarrolladores de Java.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este 'Analizador XML de Java' artículo y nos pondremos en contacto contigo lo antes posible.