如何使用 XMLBeans XmlObject 将节点添加到 XML
我的目标是获取 XML 字符串并使用 XMLBeans XmlObject 解析它并添加一些子节点。
这是一个示例文档 (xmlString),
<?xml version="1.0"?>
<rootNode>
<person>
<emailAddress>[email protected]</emailAddress>
</person>
</rootNode>
这是我希望 XML 文档在添加一些节点后的样子,
<?xml version="1.0"?>
<rootNode>
<person>
<emailAddress>[email protected]</emailAddress>
<phoneNumbers>
<home>555-555-5555</home>
<work>555-555-5555</work>
<phoneNumbers>
</person>
</rootNode>
基本上,只需添加
节点和两个子节点 <家/>
和<工作/>
。
这是我目前了解到的情况,
XmlObject xml = XmlObject.Factory.parse(xmlString);
谢谢
My goal is to take an XML string and parse it with XMLBeans XmlObject and add a few child nodes.
Here's an example document (xmlString),
<?xml version="1.0"?>
<rootNode>
<person>
<emailAddress>[email protected]</emailAddress>
</person>
</rootNode>
Here's the way I'd like the XML document to be after adding some nodes,
<?xml version="1.0"?>
<rootNode>
<person>
<emailAddress>[email protected]</emailAddress>
<phoneNumbers>
<home>555-555-5555</home>
<work>555-555-5555</work>
<phoneNumbers>
</person>
</rootNode>
Basically, just adding the <phoneNumbers/>
node with two child nodes <home/>
and <work/>
.
This is as far as I've gotten,
XmlObject xml = XmlObject.Factory.parse(xmlString);
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
下面是使用 XmlCursor 插入新元素的示例。您还可以获取 XmlObject 的 DOM 节点并使用这些 API。
Here is an example of using the XmlCursor to insert new elements. You can also get a DOM Node for an XmlObject and using those APIs.
XMLBeans 看起来很麻烦,这里有一个使用 XOM 的解决方案:
XMLBeans seems like a hassle, here's a solution using XOM:
仅使用 XmlObject 接口来操作对象可能有点困难。您是否考虑过从此 xml 生成 XMLBEANS java 对象?
如果您没有此架构的 XSD,您可以使用 XMLSPY 或某些此类工具生成它。
如果您只需要 XML 操作(即添加节点),您可以尝试其他一些 API,例如 jdom 或 xstream 或类似的东西。
It may be a little difficult to manipulate the objects using just the XmlObject interface. Have you considered generating the XMLBEANS java objects from this xml?
If you don't have XSD for this schema you can generate it using XMLSPY or some such tools.
If you just want XML manipulation (i.e, adding nodes) you could try some other APIs like jdom or xstream or some such thing.
方法
getDomNode()
使您可以访问底层 W3C DOM 节点。然后您可以使用 W3C 文档接口附加子项。Method
getDomNode()
gives you access to the underlying W3C DOM Node. Then you can append childs using W3C Document interface.