So lesen Sie eine XML-Datei in Java - (JDOM Parser)

Wie man eine XML-Datei in Java liest - (JDOM Parser)

JDOM ist ganz einfach eine Java-Darstellung eines XML-Dokuments. JDOM bietet eine Möglichkeit, dieses Dokument für einfaches und effizientes Lesen, Bearbeiten und Schreiben darzustellen. Es hat eine einfache API, ist leicht und schnell und ist für den Java-Programmierer optimiert. Es ist eine Alternative zu DOM und SAX, obwohl es sich gut in DOM und SAX integrieren lässt.

JDOM, Java XML-Parser, ist benutzerfreundlicher beim Zugriff auf das XML-Dokument.

In diesem Beispiel zeigen wir Ihnen, wie Sie mit JDOM eine XML-Datei lesen und jedes Element ordnungsgemäß ausdrucken können.

1. Laden Sie die JDOM-Bibliothek herunter

JDOM ist nicht wie SAX oder DOM, die in JDK gebündelt sind. Um JDOM verwenden zu können, müssen Sie die Bibliothek manuell herunterladen.

Holen Sie sich JDOM vonJDOM official site oder deklarieren Sie die folgende Abhängigkeit, wenn Sie Maven verwenden.

    
    jdom
    jdom
    1.1
    

2. XML-Datei

XML-Datei wie folgt


    
        yong
        mook kim
        example
        100000
    
    
        low
        yin fong
        fong fong
        200000
    

3. Java-Datei

Verwenden Sie den JDOM-Parser, um die obige XML-Datei zu analysieren.

import java.io.File;
import java.io.IOException;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;

public class ReadXMLFile {
    public static void main(String[] args) {

      SAXBuilder builder = new SAXBuilder();
      File xmlFile = new File("c:\\file.xml");

      try {

        Document document = (Document) builder.build(xmlFile);
        Element rootNode = document.getRootElement();
        List list = rootNode.getChildren("staff");

        for (int i = 0; i < list.size(); i++) {

           Element node = (Element) list.get(i);

           System.out.println("First Name : " + node.getChildText("firstname"));
           System.out.println("Last Name : " + node.getChildText("lastname"));
           System.out.println("Nick Name : " + node.getChildText("nickname"));
           System.out.println("Salary : " + node.getChildText("salary"));

        }

      } catch (IOException io) {
        System.out.println(io.getMessage());
      } catch (JDOMException jdomex) {
        System.out.println(jdomex.getMessage());
      }
    }
}

Ausgabe

First Name : yong
Last Name : mook kim
Nick Name : example
Salary : 100000
First Name : low
Last Name : yin fong
Nick Name : fong fong
Salary : 200000

Note
Sie können auch die folgenden zwei Beispiele verwenden: