C#给xml添加指定节点,在线等,寻求帮助!

C#给xml添加指定节点,在线等,寻求帮助!,第1张

根据

你的贴图可以看出你的记录只有一个唯一键值,用户名,那么如果想删除

记录必须找到这个唯一键值的在xml元素中对应的属性,通过这个属性确定这个元素,然后删除这个元素。我们可以通过linq语句来 *** 作。

下面的代码将用来 *** 作xml

string

xmlpath="你xml的地址"

xdocument

xdoc

=

xdocument.load(xmlpath)

xelement

xele

=

xdoc.root.element("元素名")

//如果你要根据属性来查询的话,这么用

ienumerable

xeles=from

xel

in

xdoc.root.descendants()

where

xel.attribute("唯一键值的属性名").value=="唯一键值"

select

xel

xelement

xelee=xeles.firstordefault()

xelee.remove()

那么这样就删除了。

至于你的唯一键值如何获得,我想这个很好办,你用的是listview,通过listview的selected属性就可以得到你所选择行的行索引号,通过索引号就自然可以读取到所在行的第一列的值。

xmlDoc.Load("titles.xml")//加载xml文件,路径未指定时默认在当前项目环境下 XmlNode root = xmlDoc.SelectSingleNode("items")//选择要添加子节点的items节点 XmlElement xe1 = xmlDoc.createElement_x("item")//创建一个具有指定名称的子节点 xe1.SetAttribute("类别", "张三")//设置item的属性 及属性值

public void InsertXml()

{

string path="Xml文件的位置"

XmlDocument doc=new XmlDocument()

doc.Load(path)

XmlNode root=doc.DocumentElement//获得根节点

foreach(XmlNode items in root.ChildNodes)

{

if(items.Name=="data")

{

foreach(XmlNode item in items.ChildNodes)

{

if(item.Name="meter")

{

XmlNode xm1=doc.CreateElement("function")

function.SetAttribute("id","06")

function.SetAttribute("coding","A")

function.SetAttribute("error","A")

function.InnerText="223.33"

item.AppendChild(function)

doc.Save(path)

return

}

}

}

}

}

参考下吧


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存