#1 2. Februar 2011 XML Problem Hallo RRler. Ich habe folgende XML Datei: Code: <?xml version="1.0" encoding="UTF-8"?> <node1> <node2>& # 4 7 ;</node2> //OHNE LEERZEICHEN </node1> Über diese lasse ich meine Javaapp laufen, welche den Inhalt dieser XML in einer andere XML eins zu eins übernehmen soll. Was ich jedoch erhalte ist folgendes: Code: <?xml version="1.0" encoding="UTF-8"?> <node1> [highlight]<node2>/</node2>[/highlight] </node1> Das "& # 4 7 ;" (ohne Leerzeichen) wurde zu "/" konvertiert (rot markiert). Das möchte ich allerdings nicht. Kann mir jemand sagen wo mein Fehler liegt? Es folgt der Java-Code: Code: import org.jdom.input.SAXBuilder; import org.jdom.Document; import org.jdom.output.XMLOutputter; [...] //main ruft debug() auf ... [...] private void debug() throws Exception { //lesen File f = new File("D:/[...]/encoding.xml"); SAXBuilder sax = new SAXBuilder(); Document doc = sax.build(f); //XML Schreiben FileOutputStream fos = new FileOutputStream(new File("D:/tmp/encoding/test1.xml")); XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat()); outputter.output(doc, fos); fos.flush(); fos.close(); } Ich muss das Problem auf diesem Weg lösen (mit JDOM ), bitte keine Alternativvorschläge. Vielen Dank im Voraus. + Multi-Zitat Zitieren
#2 2. Februar 2011 AW: XML Problem versuch mal <![CDATA[& # 4 7 ;]]> in der XML, das dürfte die probleme lösen. ich befürchte dass der das direkt parsed, da diese &.... sachen ansich nur codierungen für einzelne zeichen sind edit: versuch mal: SAXBuilder sax = new SAXBuilder(); sax.setExpandEntities(false); Document doc = sax.build(f); + Multi-Zitat Zitieren
#3 2. Februar 2011 AW: XML Problem Es wäre in meinem Fall leider zu komplex das jedes mal einzeln zu ändern (habe hier nur ein vereinfachtes Beispiel vorgeführt). Klappt leider nicht. Trotzdem danke für deine Mühe, ne BW haste dafür. Das Thema hat sich für mich jetzt erledigt (passe mich dem "/" an, statt es zu ändern). Ich lasse das Thema trotzdem mal auf, da mich eine Lösung doch interessieren würde. + Multi-Zitat Zitieren
#4 20. Februar 2011 AW: XML Problem Hallo Xen0n, meines Wissens müssen in XML die folgenden Character escaped werden: Code: " < > & Kannst Du die XML-Datei so generieren, dass das Slash "im Klartext" in der XML-Datei steht ? Hoffe das hilft (Nur so'ne Idee). BG MaxDev PS: SAXBuilder kenne ich nicht. Java auch sehr wenig. + Multi-Zitat Zitieren