# jdom encoding



## PhantomXXL (5. Apr 2005)

Quelltext:

```
String dtd = "http://192.168.168.105"+esd.request.getContextPath()+"/vorlagen/tcd.dtd";
		Element root= new Element("TCD");
		root.setAttribute("version","1.17");
		DocType dc = new DocType("TCD",dtd);
		esd.newxml = new Document(root,dc);
	
		XMLOutputter xmlout = new XMLOutputter();
		String xml=xmlout.outputString(esd.newxml);
```

Inhalt vom String xml ausgegeben:

```
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE TCD SYSTEM "http://192.168.168.105/fronted/vorlagen/tcd.dtd">
<TCD version="1.17" />
```

Problem:
wie bring ich mit jdom das encoding auf iso-8859-1? weil sonst gibt es einige probleme mit umlauten und dergleichen


----------



## DP (5. Apr 2005)

<?xml version="1.0" encoding="iso-8859-1"?>


----------



## PhantomXXL (5. Apr 2005)

ja das will ich haben, aber wie setz ich das im code mit der document klasse?


----------



## Bleiglanz (5. Apr 2005)

sowas gibts nicht, wenn du ein xml document einliest, dann sollte der parser das richtige Encoding wählen; er stellt dir dann das ganze als java strings zu verfügung (d.h. das Encoding verschwindet aus Programmierer sicht)

und java strings haben KEIN Encoding oder sowas

=> auch ein DOM Objekt hat kein Encoding...


----------



## PhantomXXL (5. Apr 2005)

wenn ich mir die ausgabe xml mit inet explorer anguck und is utf-8 und hat ein sonderzeichen ála Ä ... krieg ich nen XML error angezeigt, anstatt der datenstruktur

hab aber ne billige möglichkeit gefunden:
String xml=xmlout.outputString(esd.newxml).replaceFirst("UTF-8","ISO-8859-1")


----------

