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
Freigeben: 2024-11-30 10:28:19
Original
377 Leute haben es durchsucht

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.*;
    Nach dem Login kopieren
  2. Erstellen Sie einen Document Builder:

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

    Document dom = db.parse(xml);
    Nach dem Login kopieren
  4. Stammelement abrufen:

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

    String role1 = getTextValue(doc.getElementsByTagName("role1"));
    Nach dem Login kopieren

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();
    Nach dem Login kopieren
  2. Erstellen Sie das Stammelement:

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

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

    dom.appendChild(rootEle);
    Nach dem Login kopieren
  5. Erstellen Sie einen Transformator:

    Transformer tr = TransformerFactory.newInstance().newTransformer();
    Nach dem Login kopieren
  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");
    Nach dem Login kopieren
  7. Schreiben Sie das DOM in eine Datei:

    tr.transform(new DOMSource(dom), new StreamResult(new FileOutputStream(xml)));
    Nach dem Login kopieren

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;
}
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage