Hur läser och analyserar jag XML-filer i Java?



Den här artikeln om Java XML-parser hjälper dig att förstå vad en XML-parser är och hur du analyserar en XML-fil med dom-parser i Java.

XML, eXtensible Markup Language är ett markeringsspråk som definierar en uppsättning regler för kodning av dokument i ett format som är läsbart. XML-parsing refererar till att gå igenom ett XML-dokument för att komma åt eller modifiera data. Ett XML-analysator tillhandahåller den funktionalitet som krävs för att komma åt eller ändra data i ett XML-dokument. Låt oss utforska i den här artikeln XML Parser i detalj.

Fibonacci-serieprogram i Java

Vad är XML Parser?

De XML-analysator är ett programbibliotek eller ett paket som ger ett gränssnitt för klientapplikationer för att arbeta med XML-dokument. Den kontrollerar att XML-dokumentet är korrekt format och validerar också XML-dokumenten.





Följande diagram visar hur XML-analysator interagerar med XML-dokument:

xml-parser - Edureka Du kan tänka på validering som ett annat steg bortom tolkning. Eftersom komponentdelarna i programmet identifieras vid parsning kan en validerande parser jämföra dem med det mönster som anges av DTD eller Schema för att kontrollera att de överensstämmer.



JAVA XML-analysator

Den grundläggande komponenten i XML-utveckling är XML-parsing. XML-parsing för Java är en fristående XML-komponent som analyserar ett XML-dokument (och ibland också ett fristående DTD- eller XML-schema) så att användarprogrammet kan bearbeta det. Figuren nedan visar ett XML-dokument som inmatning till XML Parser för

  • Ett XML-dokument skickassom inmatning till XML Parser för Java
  • DOM- eller SAX-tolkningsgränssnittet tolkar XML-dokumentet
  • Den analyserade XML överförs sedan till applikationen för vidare behandling

XML Parser för Java kan också innehålla en integrerad XSL Transformation (XSLT) Processor för att omvandla XML-data med hjälp av XSL-formatmallar. Med hjälp av XSLT-processorn kan du enkelt omvandla XML-dokument från XML till XML, XML till HTML eller praktiskt taget till alla andra textbaserade format.



Java erbjuder många alternativ för att analysera XML-dokument.Some för de vanliga Java XML-analysatorerna är:

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

I den här artikeln ska vi kolla hur man analyserar en XML-fil med hjälp av DOM-parser.

Java XML Parser - DOM

DOM står för Dokumentobjektmodell. DOM Parser är den enklaste Java XML-parsern att implementera och lära sig. Det analyserar ett helt XML-dokument, laddar det i minnet och konstruerar ett representation av dokumentet.Låt oss överväga ett enkelt exempel för att förstå konceptet.

För demoändamål kommer vi att använda en fil med namnet Anställda. Xml . I filen har varje anställd ett unikt ID, för- och efternamn, ålder och lön och de anställda är åtskilda av sina ID.

hur man använder trim i java
Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

För att fånga uppfattningen om en anställd skapar vi dess respektive Java-klass, kallad Anställd.java enligt nedanstående:

paket MyPackage offentlig klass Anställd {privat Sträng-ID privat Sträng Förnamn privat Sträng Efternamn privat int ålder privat dubbellön offentlig anställd (Sträng-ID, Sträng Förnamn, Sträng Efternamn, int ålder, dubbel lön) {this.ID = ID detta.Firstnamn = Förnamn this.Lastname = Efternamn this.age = ålder this.salary = lön} @ Override public String toString () {return ''}}

Analysera en XML-fil med DOM Parser

Document Object Model (DOM) tillhandahåller API: er som låter dig skapa, ändra, ta bort och omorganisera noder efter behov. DOM-tolkaren analyserar hela XML-dokumentet och laddar XML-innehållet i en trädstruktur. Använda Nod och NodeList klasser kan vi hämta och ändra innehållet i en XML-fil.

Ett prov som laddar innehållet i en XML-fil och skriver ut dess innehåll visas nedan:

paket 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) kastar ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Ladda inmatat XML-dokument, analysera det och returnera en förekomst av // Dokumentklass. Dokumentdokument = byggare.parse (ny fil ('Anställda.xml')) Lista anställda = ny ArrayList () NodeList nodList = document.getDocumentElement (). GetChildNodes () för (int i = 0 i

Körningen av koden sker enligt följande:

  • Först måste du importera dom parser-paket i applikationen
  • Nästa steg är att skapa DocumentBuilder objekt
  • Läs XML-filen till dokumentobjektet.
  • Analysera och lagra XML-filen i en instans av dokumentklassen
  • När du hittar en nod av typen Nod.ELEMENT_NODE , hämta all information och lagra dem i en instans av arbetsklassen
  • Slutligen, skriv ut informationen från alla lagrade anställda

Produktion

 

På så sätt kan du analysera en XML-fil med DOM-parser. DOM-parser har sina fördelar och nackdelar.

Fördelar och nackdelar med DOM Parser

Fördelar

  • API är mycket enkelt att använda
  • Den stöder både läs- och skrivoperationer
  • Föredras när slumpmässig åtkomst till mycket separerade delar av ett dokument krävs

Nackdelar

  • Det är minne ineffektivt. Som denfilstorleken ökar, dess prestanda försämras och förbrukar mer minne
  • Jämfört långsammare än andra XML-parsers tillgängliga i Java

Detta leder oss till slutet av den här 'Java XML Parser'-artikeln.

överföra filer till ec2 windows-instans

Se till att du tränar så mycket som möjligt och återgår till din upplevelse.

Kolla in av Edureka, ett pålitligt inlärningsföretag online med ett nätverk av mer än 250 000 nöjda elever spridda över hela världen. Vi är här för att hjälpa dig med varje steg på din resa, för att bli en förutom de här Java-intervjufrågorna, kommer vi med en läroplan som är utformad för studenter och yrkesverksamma som vill vara Java-utvecklare.

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i denna “Java XML Parser” artikeln så återkommer vi så snart som möjligt.