java - 如何在 java dom 解析器中格式化 xml?

标签 java xml dom xml-parsing

<分区>

<?xml version="1.0" encoding="UTF-8"?><Request>

<Id>

这里第一个标签被写入文件,然后是 xml 版本,我需要在下一行写入。如下图

<?xml version="1.0" encoding="UTF-8"?>
 <Request>
  <Id>

我已经使用下面的代码将xml写入文件,请帮忙

TransformerFactory transformerFactory = TransformerFactory
                .newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        DOMSource source = new DOMSource(document);
        StreamResult result = new StreamResult(new File(
                Constants.xmlLocation
                        + Constants.metaDataXmlFileName
                        + format.format(calendar.getTime()) + ".xml"));

        transformer.setOutputProperty(OutputKeys.INDENT, "yes");
        transformer.setOutputProperty(
                "{http://xml.apache.org/xslt}indent-amount", "5");
        transformer.transform(source, result);

最佳答案

你可以尝试下面的代码,这会工作正常,你会得到格式化的输出

transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.DOCTYPE_PUBLIC,"yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "10");

关于java - 如何在 java dom 解析器中格式化 xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18607343/

相关文章:

java - 字节数组打印负值。想要打印与正值相同的值

C# - 如何使用 LINQ to Objects 创建不可变对象(immutable对象)

Java:DOM 如何从名称列表中重命名节点名称

jquery - 如何使用 jQuery 在 HTML 元素旁边获取纯文本?

java - 我如何等待进程完成

java - Jackson 默认使用自定义 JSON 反序列化器

java - 使用 Javassist 修改父类(super class)中声明的方法

java - 无法将(带有命名空间的 XML)输入流解码到对象中

javascript - 如何在javascript中将xml数据格式存储为字符串?

jquery .next() 缺少注入(inject)的表单元素