带有 XMLEventWriter 的自关闭标签

问题描述 投票:0回答:2

所以问题几乎如标题所述。我正在做一些 xml 工作并使用 XMLEventWriter。我遇到的大问题是我需要创建一些自关闭标签

问题是我还没有找到使用 eventWriter 执行此操作的方法。我已经尝试了所有我能想到的使用 XMLEventFactory 但似乎没有任何效果。任何帮助将不胜感激。

java xml stax
2个回答
2
投票

我不确定使用 XMLEventWriter 是否可以实现这一点。使用 XMLStreamWriter 当然可以。

如果您无法使用 XMLEventWriter,您可以随后转换数据。

Reader xml = new StringReader("<?xml version=\"1.0\"?><foo></foo>");
TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer();
transformer.transform(new StreamSource(xml),
    new StreamResult(System.out));

上述代码的输出为:

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

0
投票

StreamWriter 的问题是它改变了属性顺序!这对我来说是不可接受的。那么解决方案是使用 XMLStreamWriter 吗?这是在原始标签中未完成的情况下始终添加结束标签。所以这是一个问题。

© www.soinside.com 2019 - 2024. All rights reserved.