gpt4 book ai didi

Java代码向内部子节点插入新元素

转载 作者:行者123 更新时间:2023-12-01 09:35:14 26 4
gpt4 key购买 nike

我有一个如下所示的 XML 文档。

<rootElement>
<fisrtElement>
<firstElementChild>
<child1>A</child1>
<child2>B</child2>
</firstElementChild>
</fisrtElement>
</rootElement>

现在我需要添加一个子节点,<child3>C</child3> ,到这个 XML 文档中,这样我的最终 XML 文档将如下所示。

<rootElement>
<fisrtElement>
<firstElementChild>
<child1>A</child1>
<child2>B</child2>
<child3>C</child3>
</firstElementChild>
</fisrtElement>
</rootElement>

我需要为此提供 Java 代码。我已经搜索了谷歌,现在我知道如何使用 DocumentBuilderFactory 将元素添加到根元素。但我不知道如何对上面给出的内部节点执行此操作。请指教。

编辑

我尝试了以下片段来添加新元素。

DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse(new File("./sample.xml"));

Element itemNode = doc.createElement("child3");
itemNode.appendChild(doc.createTextNode("C"));
Node channelNode = doc.getElementsByTagName("channel").item(0);
channelNode.appendChild(itemNode);

输出如下所示。

<rootElement>
<fisrtElement>
<firstElementChild>
<child1>A</child1>
<child2>B</child2>
<child3>c</child3>
</firstElementChild>
</fisrtElement>
</rootElement>

当我使用下面给出的修改再次运行代码时,

Element itemNode = doc.createElement("child4");
itemNode.appendChild(doc.createTextNode("D"));

第三个子节点<child3>C</child3>正在被第四个 child 取代 <child4>D</child4> 。我需要的是逐步添加 <firstElementChild> 的子节点。我在这里缺少什么。请给个建议。提前致谢。

最佳答案

您应该在 firstElementChild 节点上使用此方法:

关于Java代码向内部子节点插入新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39035771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com