Java如何提取完整的XML块
使用这个 XML 示例:
<A>
<B>
<id>0</id>
</B>
<B>
<id>1</id>
</B>
</A>
我想要一个简单的方法来提取节点 B 的 XML 块,返回 XML 字符串:
<B>
<id>1</id>
</B>
要检索此节点,我应该使用一些 Java XPath 库,如 XOM 或 Java XPath,但我找不到如何获取完整的 XML 字符串。
我发现两个使用 C# 回答的等效问题: C# 如何提取完整的 xml 节点集 和 < a href="https://stackoverflow.com/questions/3093347/how-can-i-extract-an-xml-block-from-an-xml-document">如何从 XML 中提取 XML 块文件?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
添加到 lwburk 的解决方案中,要将 DOM 节点转换为字符串形式,您可以使用 Transformer:
完整示例:
Adding to lwburk's solution, to convert a DOM Node to string form, you can use a Transformer:
Complete example:
引用第二个
B
元素所需的表达式应如下所示:或者,如果目标节点位于文档中的未知位置,请使用:
完整的 Java 示例(假设 XML 位于文件名为
workbook.xml
):The expression needed to refer to that second
B
element should look something like this:Or, if the target node is at an unknown position in the document, use:
Full Java example (assuming the XML is in a file called
workbook.xml
):