<?xml version="1.0" standalone="yes"?>
<NewDataSet xmlns="bagsinfo">
<bags>
<id>22</id>
<numid>44 </numid>
<s>6</s>
<weight>44</weight>
<size>44</size>
<piece>44</piece>
<vol>44</vol>
<pro>44</pro>
<maks> 医疗Y-44</maks>
<mokN>25</mokN>
</bags>
<equinfo>
<Sid>37</Sid>
<Name>555</Name>
<Type>555</Type>
<Amount>555</Amount>
<Unit>555</Unit>
<Bagid>5</Bagid>
<Intro>555</Intro>
<maks>22</maks>
<maksNo> 医疗Y-44</maksNo>
<mokN>0</mokN>
</equinfo>
<equinfo>
<Sid>38</Sid>
<Name>33</Name>
<Type>33</Type>
<Amount>33</Amount>
<Unit>33</Unit>
<Bagid>1</Bagid>
<Intro>33</Intro>
<maks>22</maks>
<maksNo> 医疗Y-44</maksNo>
<mokN>0</mokN>
</equinfo>
</NewDataSet>
<NewDataSet xmlns="bagsinfo">
<bags>
<id>22</id>
<numid>44 </numid>
<s>6</s>
<weight>44</weight>
<size>44</size>
<piece>44</piece>
<vol>44</vol>
<pro>44</pro>
<maks> 医疗Y-44</maks>
<mokN>25</mokN>
</bags>
<equinfo>
<Sid>37</Sid>
<Name>555</Name>
<Type>555</Type>
<Amount>555</Amount>
<Unit>555</Unit>
<Bagid>5</Bagid>
<Intro>555</Intro>
<maks>22</maks>
<maksNo> 医疗Y-44</maksNo>
<mokN>0</mokN>
</equinfo>
<equinfo>
<Sid>38</Sid>
<Name>33</Name>
<Type>33</Type>
<Amount>33</Amount>
<Unit>33</Unit>
<Bagid>1</Bagid>
<Intro>33</Intro>
<maks>22</maks>
<maksNo> 医疗Y-44</maksNo>
<mokN>0</mokN>
</equinfo>
</NewDataSet>
doc.Load(@"c:\1.xml");
var nsMgr = new XmlNamespaceManager(doc.NameTable);
nsMgr.AddNamespace("bg", "bagsinfo");
var node = doc.DocumentElement.SelectSingleNode("bg:equinfo[bg:Sid=37]", nsMgr);
if (node != null)
{
doc.DocumentElement.RemoveChild(node);
}
doc.Save(@"c:\2.xml");
XNamespace xn = "bagsinfo";
XElement xmlPage = XElement.Load("路径");
xmlPage.Descendants(xn + "Sid").Where(s => s.Value == "37").Remove();
//是删除 sid节点,还是 连父节点 也删除
//.Where(s => s.Value == "37").Select(s=>s.Parent).Remove()
xmlPage.Save("路径");
然后删除
Save
System.Xml.XmlNamespaceManager nsmanager = new System.Xml.XmlNamespaceManager(doc.NameTable);
nsmanager.AddNamespace("","");
System.Xml.XmlNode node = doc.SelectSingleNode( "bg:equinfo[bg:Sid=37]", nsmanager);
public XmlDocument DeleteXmlNodeByInnerText(XmlDocument xmlDoc, string NodeName, string NodeValue)
{
XmlNodeList xn = objXmlDoc.GetElementsByTagName(NodeName);
foreach (XmlNode cNode in xn)
{
XmlElement xe = (XmlElement)cNode;
if (xe.InnerText == NodeValue)
{
xe.ParentNode.RemoveChild(cNode);
break;
}
}
return xmlDoc;
}
xmlDoc.Load(Server.MapPath("xmlSave\\mok-25.xml")); XmlNodeList xn = xmlDoc.GetElementsByTagName("Sid");
foreach (XmlNode cNode in xn)
{
XmlElement xe = (XmlElement)cNode;
if (xe.InnerText == "37")
{
xe.ParentNode.RemoveAll();
break;
}
}
xmlDoc.Save(Server.MapPath("xmlSave\\mok-26.xml"));可以删除内容但是<equinfo></equinfo>删除不了
改成 (xe.ParentNode).ParentNode.RemoveAll();
XElement xmlPage = XElement.Load("../../xm1.xml"); xmlPage.Descendants(xn + "Sid").Where(s => s.Value == "37").Select(s=>s.Parent).Remove();
xmlPage.Save("../../xm1.xml");