Wie kann man das ecncoding in einem vorhandenen Document-Objekt ändern?

Servus !

Vielleicht kann mir jemand bei folgender Problematik weiter helfen:

Ich übergebe der unteren Methode xmlToString ein Document-Object mit vorhandenen XML-Daten. Jetzt enthält die erste Zeile der XML-Daten die folgende XML Deklaration.

[XML]

<?xml version="1.0" encoding="IBM0114" standalone="no"?>

[/XML]

Ich möchte nun das encoding von encoding=“IBM0114” aus encoding=“UTF-8” umstellen.
Leider ist mir bisher keine Methode bekannt womit ich das encoding im Document-Objekt ersetzen oder neu setzen könnte.

Ich erhalte bisher immer folgende Warnung:

Warning: The encoding ‘IBM0114’ is not supported by the Java runtime.

Leider darf ich die Warnungen auch nicht per Compiler Einstellungen einfach so unterdrücken. Ich benötige eine Möglichkeit die Sache irgendwie innerhalb der Methode xmlToString zu ändern und das noch bevor die Transformation ausgeführt wird.


public static String xmlToString(Document xml) throws TransformerException {
	
		Transformer transformer = TransformerFactory.newInstance().newTransformer();
		transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
		transformer.setOutputProperty(OutputKeys.METHOD, "xml");
		transformer.setOutputProperty(OutputKeys.STANDALONE, "yes");
		transformer.setOutputProperty(OutputKeys.INDENT, "no");
		
		DOMSource dom = new DOMSource(xml);
		Writer out = new StringWriter();
		transformer.transform(dom, new StreamResult(out));
		
		return out.toString();
	}

Danke schon einmal für Eure Hilfe.

So long…
boby

Das wird ein Problem…
Wenn die XML in IBM0114 ist, wirst du auch einen entsprechenden Encoder brauchen, um sie vernünftig lesen und anschliessend mit evtl. anderem Encoding neu schreiben zu können.
Evtl. ist die ‘0’ in ‘IBM0114’ ja auch nur am falschen Platz (Druckfehler), denn ‘IBM1140’ wird von Java zumindest unterstützt. Kann aber auch sein, dass da 'ne ‘0’ fehlt, es also IBM01140 heissen müsste…

edit: hier noch ein Link
http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html

Unter Linux habe ich in so einer Situation immer zig Editoren installiert, bis ich einen gefunden habe, der das entsprechende Encoding beherrscht. Dann öffnen und wieder speichern.

Schneller ist