How to add a carriage return to XML output in Java

carriage-return, java, xml

Solution

This should fix the issue.

transformer.setOutputProperty(OutputKeys.INDENT, "yes");

Problem

In Java how do I output a carriage return in the resulting XML file, so that everything isn't on one line? ``` DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.newDocument(); Element root = doc.createElement("requests"); doc.appendChild(root); root.appendChild(request); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(new File(file)); transformer.transform(source, result); ``` The above code creates an XML file, but all on one line.

Original source