使用 MSXML 在 XML 节点中设置属性。我很震惊
我尝试使用 MSXML 在 XML 节点中设置属性。 IXMLDOMElement
单独具有成员函数 setAttribute
。所以我得到了文档元素。
pXMLDocumentElement -> get_documentElement (& pElement );
pElement -> selectSingleNode ( nodePathString ,& pNode );
.
.
.
pElement -> setAttribute ( bstr , var );
我选择了必须使用 selectSingleNode 函数设置属性的所需节点。选择所需的节点后,我尝试设置属性。
但PElement
指针没有移动到所需的节点。它留在根节点上。结果:在 root 本身中添加了该属性。
有什么办法可以将我的 PElement
转移到 selectSingleNode
函数产生的节点吗?这样我就可以设置属性了。
I try to set an attribute in a XML node using MSXML. IXMLDOMElement
alone has the member function setAttribute
. So I got the document element.
pXMLDocumentElement -> get_documentElement (& pElement );
pElement -> selectSingleNode ( nodePathString ,& pNode );
.
.
.
pElement -> setAttribute ( bstr , var );
I selected the required node in which the attribute has to be set using selectSingleNode
function. After selecting the required node, I tried to set attribute.
But the PElement
pointer does not shift to the required node. It stayed on the root node. Result: added the attribute in root itself.
Is there any way, I can shift my PElement
to the node resulted in selectSingleNode
function? So that I can set the attribute.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为您必须在
pNode
指针上使用setAttributeNode
API。当您阅读时,请阅读此有关使用的教程MSXML。在掌握了基础知识之后 此博客。
I think you have to use the
setAttributeNode
API on yourpNode
pointer.While you are at it read this tutorial on using MSXML. And after you have the basics covered this blog.
我认为你只需使用函数
get_documentElement
,然后你将获取DOM中的根节点,根指针存储在pElement
中,然后你调用setAttribute
函数使用指针pElement
,因此 root 的属性将始终被设置I think you just use the funcion
get_documentElement
, then you will get the root node in the DOM, the root pointer is stored in thepElement
, and you call thesetAttribute
function by using the pointerpElement
,so the attribute of root will always be set