0

这个问题是关于使用 Java 和 XML 进行漂亮打印的。数据本身存储在 XML 中,但我使用 Java 来操作数据。我有以下代码

<ParentElement>
  <ChildElement><HeaderNum>34</HeaderNum><LineNum>21</LineNum></ChildElement>
  <ChildElement><HeaderNum>42</HeaderNum><LineNum>54</LineNum></ChildElement>
</ParentElement>

我想在现有的两条 ChildElement 行之间插入另一个 ChildElement。我实际上这样做没有问题,但我需要保持这种格式。如果我使用

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

它将完全重新格式化文件。如果我将该属性设置为“否”,它会插入 new ,但不会插入自己的行。它与第一个位于同一行。

就我个人而言,我只是将这两个值都设为属性,但我无法更改文件的格式。有没有办法在自己的行上插入一个新的,但没有任何其他格式?

4

1 回答 1

0

如果您不愿意/不能信任序列化程序的缩进——有时你不能,因为空格实际上是 XML 文档内容的一部分——那么你将不得不自己管理空格,插入一个oe 新元素前面的适当文本节点。

DOM 没有任何内置功能可以帮助您,因为 DOM 不知道什么文本是有意义的或没有意义的,也不知道您正在使用什么缩进约定。

于 2013-12-31T18:32:55.110 回答