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:)


Anmelden zum Antworten