limoneneis
Cadet 4th Year
- Registriert
- Okt. 2009
- Beiträge
- 72
Hallo,
ich bin ganz neu unterwegs mit XML und habe eine Anfängerfrage. Ich habe den untenstehende code geschrieben und möchte in einer XML-File ein neues Element hinzufügen und in die XML zurückschreiben. D. h. XML(alt) --> Programm ausführen --> XML(neu) im Ordner \\dateien.
Wenn ich nun mein Programm ausführe ändert sich nichts an meiner Datei, wie kann ich das machen?
ich bin ganz neu unterwegs mit XML und habe eine Anfängerfrage. Ich habe den untenstehende code geschrieben und möchte in einer XML-File ein neues Element hinzufügen und in die XML zurückschreiben. D. h. XML(alt) --> Programm ausführen --> XML(neu) im Ordner \\dateien.
Wenn ich nun mein Programm ausführe ändert sich nichts an meiner Datei, wie kann ich das machen?
Code:
package probe;
import java.io.IOException;
import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
public class OsmManipulieren {
private static Document doc;
public OsmManipulieren() {
DOMParser dom = new DOMParser();
try {
// Whitespaces unterdrücken
dom.setFeature("http://apache.org/xml/features/dom/include-ignorable-whitespace", false);
// keine Entity-Reference erstellen; Ausgabe der Entity-Referenz unterdrücken
// dom.setFeature("http://apache.org/xml/features/dom/create-entity-ref-nodes", false);
System.out.println("DOM-Implementierung: " + dom.getProperty("http://apache.org/xml/properties/dom/document-class-name"));
dom.parse("dateien\\Buch.xml");
doc = dom.getDocument();
System.out.println("Strukturbaum der Datei dichter.xml vollstaendig aufgebaut\n");
} catch (SAXException se) {
System.out.println("Fehler beim Parsen: " + se.getMessage());
} catch (IOException e) {
System.out.println("E/A-Fehler: " + e.getMessage());
}
}
public void hinzufuegen() {
Node nodeName = doc.getFirstChild();
System.out.println("Name: " + nodeName.getNodeName());
if (nodeName != null) {
Node n = nodeName;
System.out.println("Name: " + n.getNodeName());
Element nodeWerk = doc.createElement("Werk");
Text text = doc.createTextNode("Text");
nodeWerk.appendChild(text);
nodeWerk.setAttribute("Art", "art");
nodeWerk.setAttribute("Erscheinungsjahr", "1111");
n.appendChild(nodeWerk);
}
}
public static void main(String[] args) {
OsmManipulieren o = new OsmManipulieren();
o.hinzufuegen();
}
}
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Buch>
<Titel>Wilhelm Tell</Titel>
<Autor>
<Vorname>Friedrich</Vorname>
<Nachname>Schiller</Nachname>
<!-- Nachfolgend erscheint ein Gemälde von Schiller -->
<Img quelle="Schiller.jpg" hoehe="200" breite="100" />
</Autor>
</Buch>