XML Pretty Format lesen fehler
-
HAllo Leute,
ich habe jeweil eine Funktion zum lesen und schreiben einer XML datei!
Wenn ich aber nur die XML datei im "pretty" format schreibe, kommt beim lesen eine exception, die bedeutet, dass die xml datei wohl nich mehr richtig geparst wird.Das Pretty Format bekomm ich, indem ich die Eigenschaft:
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
in der Schreibmethode anfüge, aber dann eben der lese fehler
Exception (Beim Casten eine Node Type zu Element) Was aber ohne das pretty format nicht passiert!
com.sun.org.apache.xerces.internal.dom.DeferredTextImpl cannot be cast to org.w3c.dom.Element
Hier mal der Code zum lesen, und zum schreiben
Schreiben:
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); //root elements Document doc = docBuilder.newDocument(); //Serialize Element root = GetInstanceElement(object, doc); doc.appendChild(root); //write the content into xml file TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(new File(filename)); transformer.transform(source, result);
Lesen:
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.parse(new File(filename)); Element root = doc.getDocumentElement(); Object object = GetInstanceOfXMLData(root);
-
Gelöst, kleiner hack, einfach die xml viel engelesen, die zeilenumbrüche entfernt, dann geparst:)