gpt4 book ai didi

java - 使用 java 在 XML 中添加新节点

转载 作者:行者123 更新时间:2023-12-01 10:58:24 25 4
gpt4 key购买 nike

我正在使用 DOM 解析器处理 XML 文件,并将整个数据从一个 xml 文件复制到另一个 xml 文件中,并更改某些节点的值。

我的 XML 文件如下所示:

 <ems:DeterminationRequest>
<ems:MessageInformation>
.........
</ems:MessageInformation>
<ems:case>
<ns17:CalHEERSCaseInfo> ... </ns17:CalHEERSCaseInfo>
<ns17:persons> ..... </ns17:persons>
</ems:case>
</ems:DeterminationRequest>

现在我想将子节点添加到具有其他子节点的“ems:DeterminationRequest”。

用于添加新节点的链接:link1 , link2 .

我知道如何使用以下语法将子节点添加到父节点:

....
Document doc = db.parse(new FileInputStream(new File("in.xml")));
Element element = doc.getDocumentElement();
Node node = doc.createElement("ns17:CaseReferals");
element.appendChild(node);
.....

但我想添加以下节点语法:

 <ns17:CaseReferrals >
<ns17:OtherProgramInformationRequest>
<ns17:CHDPInfoInd></ns17:CHDPInfoInd>
<ns17:WICInfoInd></ns17:WICInfoInd>
<ns17:FamilyPACTInfoInd></ns17:FamilyPACTInfoInd>
<ns17:SHOPInfoInd></ns17:SHOPInfoInd>
<ns17:EPSDTInfoInd></ns17:EPSDTInfoInd>
<ns17:VoterRegistrationInfoInd></ns17:VoterRegistrationInfoInd>
<ns17:PCSPInfoInd></ns17:PCSPInfoInd>
</ns17:OtherProgramInformationRequest>
</ns17:CaseReferrals>

那么有什么办法可以创建一个上述语法的字符串并作为父节点的子节点呢?

最佳答案

一次一个元素。

Document doc = db.parse(new FileInputStream(new File("in.xml")));
Element documentElement= doc.getDocumentElement();
Node ns17CaseReferals= doc.createElement("ns17:CaseReferals");
documentElement.appendChild(ns17CaseReferals);
Node ns17CHDPInfoInd = doc.createElement("ns17:CHDPInfoInd");
ns17CaseReferals.appendChild(ns17CHDPInfoInd);

等等(可能有重构机会来添加具有给定名称的空子元素的重复操作)。

否则,只需将文本解析为 XML 文档即可获取 DOM 节点。

关于java - 使用 java 在 XML 中添加新节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33481920/

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