XML删除指定节点

  今天使用C#操作XML读取配置文件,删除指定节点。本来很简单,但是不注意就会出错哦,拿出来分享下经验

     public void Remove(VideoSource videoSource)
        {

 String innerText = videoSource.TypeID + videoSource.Name + videoSource.ThumbPath + videoSource.VideoPath;

XmlDocument xml=new XmlDocument();

    xml.Load(System.Windows.Forms.Application.StartupPath + "/XML/VideoSourceXML.xml");

    //获取第一个VideoSources下所有的子节点

XmlNodeList xmlNodeList = xml.SelectSingleNode("VideoSources").ChildNodes;

foreach (XmlNode item in xmlNodeList)

{

       if (item.InnerText == innerText)

      {

        //PS:如果你要是xml.RemoveChild(item);那么肯定会报移除得节点不是xml的子节点。

        xml.SelectSingleNode("VideoSources").RemoveChild(item);

          //item.RemoveAll();可以删除item下的所有子节点

break;

}

}

xml.Save(System.Windows.Forms.Application.StartupPath + "/XML/VideoSourceXML.xml");

  }

XML删除指定节点

时间: 2024-10-16 20:19:16

XML删除指定节点的相关文章

C#中读取xml文件指定节点

目录(?)[-] XmlDocumentSelectSingleNode方法的使用 XmlDocumentSelectNodes方法的使用 通过节点属性查找指定节点 参考:Select XML Nodes by Name 假设xml文件内容是 [c-sharp] view plaincopyprint? <?xml version="1.0" encoding="utf-8"?> <Workflow> <Activity> <

sql xml 查询指定节点值,以及节点属性值

SELECT   top 10  [HFMBDATA].query('(/Items/Item[@ID=''tbBryj''])').value('(//TextValue)[1]','nvarchar(max)') as mz, [HFMBDATA].value('(Items/Item[@ID="rb_fzhd_y"]/@ControlType)[1]','varchar(50)')   FROM [EMRCP].[dbo].[T_ZYBR_HF] as at 获取结果: mz  

删除指定节点Remove Nth Node From End of List

Given a linked list, remove the nth node from the end of list and return its head. For example, Given linked list: 1->2->3->4->5, and n = 2. After removing the second node from the end, the linked list becomes 1->2->3->5. Note:Given n

读取XML文件的指定节点的值 并转换为Item

cmb_State_Send.ItemsSource = null; XmlDocument doc = new XmlDocument(); doc.Load("D:\\模板\\WorkstationState_Config.xml"); //加载Xml文件 XmlElement rootElem = doc.DocumentElement; //获取根节点 XmlNode xn = rootElem.SelectSingleNode("//Workstation[@Nam

关于删除树中指定节点的实例分析

Tree *Delete(Tree *T,int n) { //将树中指定节点删除的函数 Tree *tmp; if(T==NULL) return NULL; if(T->element==n) { if(T->right==NULL) //如果没有右子树,即只有一个该节点儿子左子树 { //则直接删除 tmp=T; T=T->left; //用左子树节点代替父节点 free(tmp); } else //如果右子树存在 { tmp=T->right; while(tmp->

读取xml中的指定节点的值

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 /// <summary>         /// 读取xml中的指定节点的值        /// </summary>         private string ReadXmlNode(string filename)        {            string result = "-1";            XmlDocu

xml转换为json格式时,如何将指定节点转换成数组 Json.NET

使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordArray要求是数组格式 <root> <Record> </Record> <RecordArray> <a>1</a> <b>2</b> </RecordArray> </root> 转换

java中XML操作:xml与string互转、读取XML文档节点及对XML节点增删改查

一.XML和String互转: 使用dom4j程式变得很简单 //字符串转XML String xmlStr = \"......\"; Document document = DocumentHelper.parseText(xmlStr); // XML转字符串 Document document = ...; String text = document.asXML(); //这里的XML DOCUMENT为org.dom4j.Document 二.读取XML文档节点: pack

Java获取XML节点总结之读取XML文档节点

dom4j是Java的XML API,用来读写XML文件的.目前有很多场景中使用dom4j来读写xml的.要使用dom4j开发,需要下载导入dom4j相应的jar文件.官网下载:http://www.dom4j.org/dom4j-1.6.1/github下载:http://dom4j.github.io/下载解压之后如图所示: 我们只需要把dom4j-1.6.1.jar文件构建到我们开发项目中就可以了. 下面就以Eclipse创建java项目的构建方法为例说明:声明:本Java项目的开发环境J