XML und DOM

hallo zusammen

bin an einem einfachen beispiel dran. ich möchte einem xml file ganz einfach zwei elemente und text anhängen, was gemäss diversen beispielen einfach aussieht.
ich meinte mein java code sollte dies auch tun, aber wenn ich die datei nach dem ausführen des codes öffne hat sich nichts getan. der code wir aber fehlerfrei asugeführt. warum schreibt er mir nichts in die datei und stimmt mein code…?
herzlichen dank an alle…super forum !!!
ray

mein beispiel xml fiel:

Import
Row
ID „4“ ID
/Row
*****neu eelemente*********
Row
ID „test“ ID
/Row
*****neue elemente*********
/Import

für dieses beispiel hab ich folgenden java code:

import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.CharacterData;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.xml.sax.SAXParseException;

public class ParserDom
{
static Document document;
String value = „test“;

public ParserDom()
{

}

public void parse(String fileIn)
{

File datei=new File(„f:\ray\schule\OOP\konverter_inno\“+ fileIn +".xml");
boolean laden=datei.canRead();
if (laden)
{
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse( new File(„f:\ray\schule\OOP\konverter_inno\“+ fileIn +".xml") );

if (fileIn.equals(„shcsResultate“))
{
Element root = document.getDocumentElement();
Node firstRow = root.getFirstChild();

// neue Elemente erstellen und ins Document einfügen
Element newRow = document.createElement(„Row“);
Element id = document.createElement(„ID“);

CharacterData text = document.createTextNode(value);
id.appendChild(text);

newRow.appendChild(id);

root.insertBefore(newRow, firstRow);

}

}

catch (SAXParseException error)
{
System.out.println("\n+++Parse Error+++"+ „\nZeile: " + error.getLineNumber() + „\nDatei: " + error.getSystemId());
System.out.println(“\n“ + error.getMessage() );

…etc…

Hallo ray,

ich finde in Deinem Code-Auszug nicht die Stelle, in der Du das xml wieder in die Datei schreibst. Die Klasse DocumentBuilder ist nur für den Java-Input zuständig, d.h. Du änderst Dein xml-Dokument nur im Speicher, nicht in der Datei. Du bräuchtest sowas wie SAXOutputter…,
(wie die Klasse bei Dir exakt heißt, weiß ich leider nicht, denn ich arbeite mit JDOM und bin kein Spezialist für den w3c-Parser).

Gruß
Claudia

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]