3

假设我有一个 DOM 对象(或包含 xml 的字符串)。是否有可能以每个属性出现在新行上的方式序列化 xml?

这是我想要的输出:

<parent>
    <anElement 
        attrOne="1"
        attrTwo="2"
        attrThree="3"
    />
</parent>

如果解决方案是标准 java api 的一部分,则首选,但我怀疑那里没有这样的功能,还是我错了?

我在 .NET Framework 中找到了一个序列化程序的属性,称为NewLineOnAttributes。我正在寻找的是等价的东西,但在 java 中。

4

3 回答 3

1

DecentXML解析器可以做到这一点

于 2009-08-12T10:43:47.040 回答
0

XOM库有一个Serializer类,您可以覆盖它以您想要的任何格式输出。

于 2009-08-12T10:00:09.313 回答
0

我不知道任何提供这种特定能力的 Java 的 XML API。我检查了 JDOM 和 XOM 的源代码,它们都在同一行打印属性,并且没有提供用于覆盖它的特定钩子。

XOM 和 JDOM 都具有用于序列化 XML 的特定类(分别为XMLOutputterSerializer根据需要控制属性格式。

不过,至于标准的 Java API,算了吧,那东西很讨厌。

于 2009-08-12T10:18:09.153 回答