# XML DomDocument als String auslesen



## weidlix (10. Aug 2007)

Hallo, 
ich habe mir folgened Funktion geschrieben die mir ein DomDocument baut und das ganze in ein File schreibt. Das Funktioniert auch wunderbar. Jetzt möchte ich aber das generierte DomDocument als String auslesen. Hat jemand ne Idee wie ich das lösen könnte?

Danke

```
public void export(DefaultMutableTreeNode rootNode) {
        try {
            final DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
            final Document document = builder.newDocument();
            final Element root = document.createElement("Statistiken");
            root.setAttribute("expanded", "true");
 
            addNode(document, root, rootNode);
 
            document.appendChild(root);
 
            final Transformer t = TransformerFactory.newInstance().newTransformer();
            OutputStream outputStream = new FileOutputStream(ToolConfig.xmlTreeFolder);
            DOMSource source = new DOMSource(document);
            t.transform(new DOMSource(document), new StreamResult(outputStream));
            StreamResult     result = new StreamResult( outputStream );
            t.transform( source, result );
   
            System.out.println("+++++ Export  " +outputStream.toString());
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (TransformerException e) {
            e.printStackTrace();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
```


----------



## kleiner_held (10. Aug 2007)

Also statt in einer Datei solllen die XML Daten in einem String landen?
StringWriter statt FileOutputStream verwenden.


----------



## pik0r (15. Aug 2007)

Wie kann ich über DOM wenn ich die XML geniert habe in eine XML Datei speichern lassen:

bisher erfolgt die ausgabe in der console...

hab es so gemacht:


```
private XMLGeneration()
    {
        try
        {
            Document doc = this.createDocument();
            /*
             * telefonbuch
             *   name [gender]
             *     telefon
             */
            // Rootnode erstellen
            Node rootnode = doc.createElement("telefonbuch");
            doc.appendChild(rootnode);
            
            this.addEntry(doc, "ich", "male", "01752332091");
            this.addEntry(doc, "du", "nüx", "was?");
            this.addEntry(doc, "sie", "female", "sagtsienich");
            
            System.out.println("Test-Ausgabe");
            System.out.println(XMLGeneration.getXMLString(doc));
            
        } catch (Exception e)
        {
            // TODO Automatisch erstellter Catch-Block
            e.printStackTrace();
        } 
    }
```
....


finde da kein ansatz...weil will eine xml später als standard über diese klasse generieren lassen und dann als test.xml in einem bestimmten pfad speichern lassen...hoffe einer hilft mir.... danke euch
	
	
	
	





```

```


----------

