Este es mi código Groovy:Cómo escribir un XML en un archivo, con solo una instancia de Parser?
// ...
def xml = new XmlParser().parse(fileName)
xml.each { e ->
// some changes are being made to XML
xml.append("test", "test me")
}
def writer = new FileWriter(newFileName)
new XmlNodePrinter(new PrintWriter(writer)).print(xml)
el código funciona, pero la salida XML tiene una gran cantidad de espacios en blanco innecesarios. Parece que estoy haciendo algo mal al escribir en el archivo.
ps. Gracias a Tim, esta es la forma en que debería funcionar (la última línea del ejemplo anterior se sustituye con estas tres líneas):
def printer = new XmlNodePrinter(new PrintWriter(writer))
printer.preserveWhitespace = true
printer.print(xml)
Si el problema es que tiene demasiado espacio en blanco en su salida, ¿no debería usar 'preserveWhitespace = false'? – pmartin
@pmartin agregó un ejemplo –
gracias. Resumí tu respuesta dentro de mi pregunta :) No entendí por qué tiene que ser tan largo (la respuesta), pero de todos modos, muchas gracias. – yegor256