
Java
Javaimport Javax.XML.parsers.DocumentBuilderFactory;import Javax.XML.parsers.DocumentBuilder;import Javax.XML.transform.Transformer;import Javax.XML.transform.TransformerFactory;import Javax.XML.transform.dom.DOMSource;import Javax.XML.transform.stream.StreamResult;import org.w3c.dom.Document;import org.w3c.dom.Element;public class XMLGenerator { public static void mAIn(String[] args) { try { // 创建一个Document对象 DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.newDocument(); // 创建根节点 Element rootElement = doc.createElement("books"); doc.appendChild(rootElement); // 添加子节点 Element bookElement = doc.createElement("book"); rootElement.appendChild(bookElement); Element titleElement = doc.createElement("title"); titleElement.appendChild(doc.createTextNode("Java编程")); bookElement.appendChild(titleElement); Element authorElement = doc.createElement("author"); authorElement.appendChild(doc.createTextNode("张三")); bookElement.appendChild(authorElement); // 创建Transformer对象 TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); // 设置输出属性,使其具有缩进格式 transformer.setOutputProperty("indent", "yes"); transformer.setOutputProperty("{XML.apache.org/xslt}indent-amount">http://XML.apache.org/xslt}indent-amount</a>", "4"); // 将Document对象转换为XML文件 DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(System.out); transformer.transform(source, result); } catch (Exception e) { e.printStackTrace(); } }}实现缩进效果在上述代码中,我们首先创建了一个Document对象,用于表示XML文档的根节点。然后,我们创建了一个Transformer对象,用于将Document对象转换为XML文件。在设置Transformer对象的输出属性时,我们通过设置"indent"属性为"yes",以及"{XML.apache.org/xslt}indent-amount">http://XML.apache.org/xslt}indent-amount"属性为"4",来实现缩进效果。最后,我们调用Transformer对象的transform方法,将Document对象转换为XML文件,并输出到控制台。通过使用Transformer类,我们可以方便地生成具有缩进格式的XML文件。这样的XML文件更易于阅读和修改,提高了代码的可维护性和可读性。以上就是关于如何缩进Transformer生成的XML的介绍,希望对您有所帮助!Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号