java - 如何将 XMLStreamReader 转换为 XMLStreamWriter

标签 java xml io sax stax

应该简单明了,但我找不到方法 - XMLOutputFactory 只接受 OutputStreamResult 或另一个 Writer 生成一个新的 XMLStreamWriter

我手头有一个 XMLStreamReader,它没有提取 Result 的方法OutputStream

如果解决方案使用事件 API 会更容易,那也可以。

谢谢

最佳答案

您可以使用 javax.xml.transform.Transformer 将包装读取器的 StAXSource 转换为包装写入器的 StAXResult

TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer();
StAXSource source = new StAXSource(xmlStreamReader);
StAXResult result = new StAXResult(xmlStreamWriter);
t.transform(source, result);

使用事件 API,您还可以使用以下方法:

关于java - 如何将 XMLStreamReader 转换为 XMLStreamWriter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5549653/

相关文章:

c - 当 printk() 驻留的内核函数未被调用(根据 ftrace)时,为什么 printk() 会在 syslog 内部连续打印?

java - 找出特定包的类在 Java/Eclipse 项目中的使用位置

Java作业

java - 将 Java 转换为 XSD 的用例与使用 JAXB 将 XSD 转换为 java 的用例是否不同?

r - 将 xml 文件转换为 r 数据框

Linux API : is it possible to specify `O_SYNC` option for a single `write` syscall

java - 在正则表达式 java 中获取括号内的文本以及分隔符?

java - 测试编译给出 "invalid target release: 1.8"

javascript - 为什么浏览器解析 <script> 标签的方式不同?

python - 如何搜索并用封闭的字符替换文本文件?