gpt4 book ai didi

java - XML DOM setNodeValue ("") 在文本节点上,还会删除其包含元素的开始标记

转载 作者:行者123 更新时间:2023-12-02 10:29:39 25 4
gpt4 key购买 nike

考虑的原始 xml 元素是这样的。

<Sender>name</Sender>

调用

node.setNodeValue("");

在文本类型的节点上删除其包含元素的开始标记

</Sender>

当我打电话时

node.setNodeValue("something");

然后它就会按预期工作。

<Sender>something</Sender>

这个方法有什么问题吗?我想要做的是删除文本内容。

<Sender></Sender>

最佳答案

再仔细看看你打电话后得到的结果

node.setNodeValue("");

我确定你有<Sender/> ,但不是</Sender> .

<Sender/>是一个空元素标签。
它是一个简写形式,其含义与 <Sender></Sender> 相同。(开始标签和结束标签之间没有内容)。 .

请参阅XML-specification (section 3.1)其中说:

The representation of an empty element is either a start-tag immediately followed by an end-tag, or an empty-element tag.

所以两者在语义上是等价的,因此没有意义想要一个而不是另一个。

关于java - XML DOM setNodeValue ("") 在文本节点上,还会删除其包含元素的开始标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53684885/

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