假设我有一个DOM对象(或包含xml的字符串)。是否有可能以某种方式序列化xml,使每个属性出现在新行上?
这是我想要的输出:
<parent>
<anElement
attrOne="1"
attrTwo="2"
attrThree="3"
/>
</parent>
首选如果解决方案是标准java api的一部分,但我怀疑这样的功能在那里不可用,或者我错了?
我在.NET Framework中找到了一个名为NewLineOnAttributes的序列化程序的属性。我正在寻找的东西是等价的,但在java中。
答案 0 :(得分:1)
DecentXML解析器可以执行此操作。
答案 1 :(得分:0)
XOM库有一个Serializer类,你可以覆盖它以你想要的任何格式输出。
答案 2 :(得分:0)
我不知道任何提供该特定功能的Java API API。我检查了JDOM和XOM的源代码,它们都在同一行上打印属性,并没有提供特定的钩子来覆盖它。
XOM和JDOM都有用于序列化XML的特定类(分别为XMLOutputter
和Serializer
),并且这两个类都有用于处理属性序列化的保护或公共方法,所以你可以,如果你想要,继承那些类并覆盖适当的方法来控制你想要的属性格式。
至于标准的Java API,但是,忘记它,那些东西非常讨厌。