Heim >Java >javaLernprogramm >Wie kann ich XML-Dateien in Java mithilfe der DOM- und Transformer-API lesen und schreiben?

Wie kann ich XML-Dateien in Java mithilfe der DOM- und Transformer-API lesen und schreiben?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-30 10:28:19456Durchsuche

How Can I Read and Write XML Files in Java Using DOM and Transformer API?

XML-Dateien lesen und schreiben: Ein Leitfaden für Anfänger

XML spielt eine wichtige Rolle beim Datenaustausch und der Datenspeicherung. Um XML-Dateien effizient verwalten zu können, ist es wichtig zu verstehen, wie man sie mit Java liest und schreibt. Diese Anleitung führt Sie Schritt für Schritt durch den Prozess.

XML-Dateien lesen

Um eine XML-Datei zu lesen, verwenden wir das Document Object Model (DOM). . DOM bietet eine baumartige Struktur, die das XML-Dokument darstellt. So geht's:

  1. Importieren Sie die erforderlichen Bibliotheken:

    import javax.xml.parsers.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import org.xml.sax.*;
    import org.w3c.dom.*;
  2. Erstellen Sie einen Document Builder:

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
  3. XML analysieren Datei:

    Document dom = db.parse(xml);
  4. Stammelement abrufen:

    Element doc = dom.getDocumentElement();
  5. Daten aus den Elementen extrahieren:
    Der folgende Code wird abgerufen der Textwert des Elements „role1“ als Beispiel:

    String role1 = getTextValue(doc.getElementsByTagName("role1"));

XML-Dateien schreiben

Um eine XML-Datei zu schreiben, verwenden wir die Transformer-API. So geht's:

  1. Erstellen Sie ein Dokument:

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    Document dom = db.newDocument();
  2. Erstellen Sie das Stammelement:

    Element rootEle = dom.createElement("roles");
  3. Fügen Sie Datenelemente zum hinzu root:

    Element e = dom.createElement("role1");
    e.appendChild(dom.createTextNode(role1));
    rootEle.appendChild(e);
  4. Fügen Sie das Root-Element zum Dokument hinzu:

    dom.appendChild(rootEle);
  5. Erstellen Sie einen Transformator:

    Transformer tr = TransformerFactory.newInstance().newTransformer();
  6. Ausgabe festlegen Eigenschaften:

    tr.setOutputProperty(OutputKeys.INDENT, "yes");
    tr.setOutputProperty(OutputKeys.METHOD, "xml");
    tr.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
    tr.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, "roles.dtd");
  7. Schreiben Sie das DOM in eine Datei:

    tr.transform(new DOMSource(dom), new StreamResult(new FileOutputStream(xml)));

Hilfsmethode

Wir verwenden diese Hilfsmethode, um Textwerte aus XML zu extrahieren Elemente:

private String getTextValue(NodeList nl) {
    String value = null;
    if (nl.getLength() > 0 && nl.item(0).hasChildNodes()) {
        value = nl.item(0).getFirstChild().getNodeValue();
    }
    return value;
}

Fazit

Dieser Leitfaden bietet einen umfassenden Überblick über das Lesen und Schreiben von XML-Dateien in Java mithilfe von DOM und Transformer API. Denken Sie daran, Accessoren und Mutatoren zu implementieren, um effektiv mit den Daten zu interagieren.

Das obige ist der detaillierte Inhalt vonWie kann ich XML-Dateien in Java mithilfe der DOM- und Transformer-API lesen und schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn