Hvordan læses og parses XML-fil i Java?



Denne artikel om java XML-parser hjælper dig med at forstå, hvad en XML-parser er, og hvordan du parser en XML-fil ved hjælp af dom parser i Java.

XML, eXtensible Markup Language er et markup-sprog, der definerer et sæt regler til kodning af dokumenter i et format, der er læsbart. XML-parsing henviser til at gennemgå et XML-dokument for at få adgang til eller ændre data. En XML-parser giver den nødvendige funktionalitet til at få adgang til eller ændre data i et XML-dokument. Lad os udforske i denne artikel XML-parser i detaljer.

Hvad er XML Parser?

Det XML-parser er et softwarebibliotek eller en pakke, der giver en grænseflade, hvor klientapplikationer kan arbejde med XML-dokumenter. Det kontrollerer for korrekt format på XML-dokumentet og validerer også XML-dokumenter.





Følgende diagram viser, hvordan XML-parser interagerer med XML-dokumenter:

xml parser - Edureka Du kan tænke på validering som et andet trin ud over parsing. Da komponentdelene af programmet identificeres under parsing, kan en validerende parser sammenligne dem med det mønster, der er fastlagt af DTD eller skema for at kontrollere, at de stemmer overens.



JAVA XML-parser

Den grundlæggende komponent i XML-udvikling er XML-parsing. XML-parsing til Java er en uafhængig XML-komponent, der parser et XML-dokument (og til tider også et enkeltstående DTD- eller XML-skema), så brugerprogrammet kan behandle det. Figuren nedenfor viser et XML-dokument som input til XML Parser for

  • Der sendes et XML-dokumentsom input til XML Parser til Java
  • DOM- eller SAX-parsergrænsefladen analyserer XML-dokumentet
  • Den parsede XML overføres derefter til applikationen til yderligere behandling

XML Parser til Java kan også omfatte en integreret XSL Transformation (XSLT) processor til transformation af XML-data ved hjælp af XSL-typografiark. Ved hjælp af XSLT-processoren kan du nemt omdanne XML-dokumenter fra XML til XML, XML til HTML eller stort set til ethvert andet tekstbaseret format.



Java giver mange muligheder for at analysere XML-dokumenter.SOme af de almindeligt anvendte Java XML-parsere er:

hvad er ekko i php
  1. DOM-parser
  2. SAX Parser
  3. StAX Parser
  4. JAXB

I denne artikel skal vi tjekke, hvordan man analyserer en XML-fil ved hjælp af DOM Parser.

Java XML Parser - DOM

DOM står for Dokumentobjektmodel. DOM Parser er den nemmeste Java XML parser at implementere og lære. Det analyserer et helt XML-dokument, indlæser det i hukommelsen og konstruerer et repræsentation af dokumentet.Lad os overveje et simpelt eksempel for at forstå konceptet.

Til demo-formål bruger vi en fil med navnet Medarbejdere. Xml . I filen har hver medarbejder et unikt id, for- og efternavn, alder og løn, og medarbejderne er adskilt af deres id'er.

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

For at fange forestillingen om en medarbejder opretter vi også dens respektive Java-klasse, kaldet Medarbejder.java som vist nedenfor:

pakke MyPackage offentlig klasse Medarbejder {privat streng-ID privat streng Fornavn privat streng Efternavn privat int alder privat dobbeltløn offentlig medarbejder (streng-id, streng fornavn, streng efternavn, alder, dobbelt løn) {this.ID = ID dette.Firstnavn = fornavn this.Lastname = Efternavn this.age = alder this.salary = løn} @ Override offentlig streng toString () {return ''}}

Parse en XML-fil ved hjælp af DOM Parser

Document Object Model (DOM) giver API'er, der giver dig mulighed for at oprette, ændre, slette og omarrangere noder efter behov. DOM-parseren analyserer hele XML-dokumentet og indlæser XML-indholdet i en træstruktur. Bruger Node og NodeListe klasser, kan vi hente og ændre indholdet af en XML-fil.

En prøve der indlæser indholdet af en XML-fil og udskriver dens indhold, vises nedenfor:

pakke 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.ParserConfigurationExc 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) kaster ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Indlæs XML-input-dokumentet, analyser det og returner en forekomst af // Dokument klasse. Dokumentdokument = builder.parse (ny fil ('Medarbejdere.xml')) Liste medarbejdere = ny ArrayList () NodeList nodeList = document.getDocumentElement () getChildNodes () for (int i = 0 i

Udførelsen af ​​kode sker som følger:

  • Først skal du importere dom parser-pakker i applikationen
  • Næste trin er at oprette DocumentBuilder objekt
  • Læs XML-filen til dokumentobjektet.
  • Parse og gem XML-filen i en forekomst af dokumentklassen
  • Når du finder en node af typen Node.ELEMENT_NODE , hente alle dens oplysninger og gemme dem i en instans af medarbejderklassen
  • Endelig skal du udskrive oplysningerne om alle lagrede medarbejdere

Produktion

 

Sådan kan du analysere en XML-fil ved hjælp af DOM Parser. DOM-parser har sine fordele og ulemper.

Fordele og ulemper ved DOM Parser

Fordele

round robin planlægningsalgoritme i c
  • API er meget let at bruge
  • Det understøtter både læse- og skriveoperationer
  • Foretrækkes, når der kræves tilfældig adgang til vidt adskilte dele af et dokument

Ulemper

  • Det er hukommelseseffektivt. Som denfilstørrelsen øges, dens ydeevne forringes og forbruger mere hukommelse
  • Forholdsvis langsommere end andre XML-parsere, der er tilgængelige i Java

Dette bringer os til slutningen af ​​denne 'Java XML Parser' -artikel.

Sørg for at øve så meget som muligt, og vend din oplevelse tilbage.

Tjek den af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Vi er her for at hjælpe dig med hvert trin på din rejse, for at blive et ud over dette java-interviewspørgsmål, kommer vi med en læseplan, der er designet til studerende og fagfolk, der ønsker at være Java-udvikler.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Java XML Parser' artikel, og vi vender tilbage til dig så hurtigt som muligt.