xml文件中两个重名的子节点该怎么添加

xml文件中两个重名的子节点该怎么添加,第1张

在xml文件有多个命名空间时,你的xml各种类型中的元素在没有确切指明其命名空间的情况下,它的命名空间就是默认命名空间(一般问xml文档根节点中指定命名空间的第一个属性)。当你添加节点时,若没有指明该节点的命名空间时,不会使用默认命名空间的,会添加:xmls=“”,作为默认命名空间。

所以,解决的方式当然就是在添加节点时就指明其命名空间就是咯。

命名空间使用方法:

XmlNamespaceManager nsmgr = new XmlNamespaceManager(new XmlDocument().NameTable) //声明一个命名空间管理器

nsmgr.AddNamespace(“ns”, xmlUrl)//向管理器添加一个命名空间连接,其中ns为添加命名空间的名称,xmlUrl为命名空间的链接。两个参数都是string类型。

jobNode.SelectSingleNode("ns:trigger/ns:cron", nsmgr)//使用命名空间查找节点。注意其中的ns和nsmgr

其实对于你的问题只需要在创建要加入的节点时指明一个xmlUrl就可以啦:

XmlElement jobElement = xmlDoc.CreateElement("job", xmlUrl)

XmlNode xmldocSelect=xmlDoc.SelectSingleNode("user")

XmlElement el=xmlDoc.CreateElement("person")//添加person节点

el.SetAttribute("name","风云")//添加person节点的属性"name"

el.SetAttribute("sex","女") //添加person节点的属性 "sex"

el.SetAttribute("age","25") //添加person节点的属性 "age"

XmlElement xesub1=xmlDoc.CreateElement("pass")//添加person节点的里的节点

xesub1.InnerText="123"//设置文本节点

el.AppendChild(xesub1)

XmlElement xesub2=xmlDoc.CreateElement("Address")

xesub2.InnerText="昆明"//设置文本节点

el.AppendChild(xesub2)

xmldocSelect.AppendChild(el)

xmlDoc.Save(Server.MapPath("user.xml"))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11580676.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存