对XML的操作主要使用到的语法示例:

using System.Xml;

private static string XmlMarketingStaff = AppDomain.CurrentDomain.BaseDirectory + "config\\MarketingStaff.xml";

public static List<staffes> GetMarketingStaff2()
{

XmlDocument xmlListDoc = XmlHlp.LoadXml(XmlMarketingStaff);
       XmlNodeList nSys = null;
       nSys = xmlListDoc.SelectNodes("//staff");
       List<QianjiaCRM2._0.Helper.StaffHlp.staffes> list = new List<QianjiaCRM2._0.Helper.StaffHlp.staffes>(nSys.Count);
       for (int i = 0; i < nSys.Count; i++)
       {
              XmlNode n = nSys[i];
              QianjiaCRM2._0.Helper.StaffHlp.staffes c = new QianjiaCRM2._0.Helper.StaffHlp.staffes()
              {
                     OldName = n.Attributes["name"].Value,
                     Name = n.Attributes["name"].Value
              };
              list.Add(c);
       }
       return list;
}

public static void UpdateTrailerXml(staffes sta)
{
       XmlDocument xmlListDoc = XmlHlp.LoadXml(XmlMarketingStaff);
       XmlNodeList nSys = null;
       nSys = xmlListDoc.SelectNodes("//staff");
       if (!string.IsNullOrEmpty(sta.OldName))
       {
              for (int i = 0; i < nSys.Count; i++)
              {
                     XmlNode n = nSys[i];
                     if (n.Attributes["name"].Value == sta.OldName)
                     {
                            n.Attributes["name"].Value = sta.Name;
                     }
              }
       }
       else
       {
              XmlElement root = xmlListDoc.DocumentElement;
              XmlElement staff = xmlListDoc.CreateElement("staff");
              staff.SetAttribute("name", sta.Name);
              root.AppendChild(staff);
       }
       xmlListDoc.Save(XmlMarketingStaff);
}

public static void Delete(string name)
{
       XmlDocument xmlListDoc = XmlHlp.LoadXml(XmlMarketingStaff);
       XmlNodeList nSys = null;
       nSys = xmlListDoc.SelectNodes("//staff");
       if (!string.IsNullOrEmpty(name))
       {
              for (int i = 0; i < nSys.Count; i++)
              {
                     XmlElement root = xmlListDoc.DocumentElement;
                     XmlNode n = nSys[i];
                     if (n.Attributes["name"].Value == name)
                     {
                            root.RemoveChild(n);
                     }
              }
              xmlListDoc.Save(XmlMarketingStaff);
       }
}

public class staffes
{
       public string OldName { get; set; }
       public string Name { get; set; }
}

/// <summary>
/// 加载Xml文件返回XmlDocument对象
/// </summary>
/// <param name="xmlPath">文件路径</param>
/// <returns></returns>
public static XmlDocument LoadXml(string xmlPath)
{
         XmlDocument xmlDoc = new XmlDocument();
         XmlReaderSettings settings = new XmlReaderSettings();
         settings.IgnoreComments = true;//忽略文档里面的注释
         XmlReader reader = XmlReader.Create(xmlPath, settings);
         xmlDoc.Load(reader);
         reader.Close();
         return xmlDoc;
}

对XML的操作的更多相关文章

  1. VS2012 Unit Test —— 我对IdleTest库动的大手术以及对Xml相关操作进行测试的方式

    [1]我的IdleTest源码地址:http://idletest.codeplex.com/ [2]IdleTest改动说明:2013年10月份在保持原有功能的情况下对其动了较大的手术,首先将基本的 ...

  2. sql server中对xml进行操作

    一.前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和参数.为了更好地支持 XM ...

  3. Xml通用操作类

    using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Xml ...

  4. C# XML流操作简单实例

    这里我们先介绍操作XML文件的两个对象:XmlTextReader和XmlTextWriter打开和读取Xml文件使用到的对象就是XmlTextReader对象.下面的例子打开了与程序在同一路径下的一 ...

  5. SQL Server 2008 对XML 数据类型操作

    原文 http://www.cnblogs.com/qinjian123/p/3240702.html 一.前言 从 SQL Server 2005 开始,就增加了 xml 字段类型,也就是说可以直接 ...

  6. 我来讲讲在c#中怎么进行xml文件操作吧,主要是讲解增删改查!

    我把我写的四种方法代码贴上来吧,照着写没啥问题. 注: <bookstore> <book> <Id>1</Id> <tate>2010-1 ...

  7. 由“Jasperrpeorts 4.1.2升级到5.1.2对flex项目的解析”到AS3 带命名空间的XML的操作

    原文同步至:http://www.waylau.com/from-jasperrpeorts-4-1-2-upgraded-to-5-1-2-parsing-of-flex-projects-to-t ...

  8. xml常用操作(js、sql、vb)

    我们经常会用到xml操作,如下介绍了js.sql.vb等对xml的操作. JS创建xml对象 //创建对象 function getDataXML() {     var objTds = $(&qu ...

  9. Python实现XML的操作

    本文从以下两个方面, 用Python实现XML的操作: 一. minidom写入XML示例1 二. minidom写入XML示例2 三. ElementTree写入/修改示例 四. ElementTr ...

随机推荐

  1. Lucene:信息检索与全文检索

    目录 信息检索的概念 信息检索技术的分类 全文检索与数据库查询对比 全文检索工具一般由三部分构成 全文检索中建立索引和进行检索的流程 索引里面究竟存什么 如何创建索引 如何对索引进行检索 Lucene ...

  2. VC中监测函数运行时间

    VC++编程时,经常会监控某个算法的计算时间,以确定算法的效率.编码举例如下, //========start: algorithm time============= // SYSTEMTIME s ...

  3. 【不积跬步,无以致千里】VIM查找替换归纳总结zz

    http://spaces.msn.com/dingy/blog/cns!2F24B9E66A542581!327.entry VIM中常用的替换模式总结. 1,简单替换表达式 替换命令可以在全文中用 ...

  4. 【M15】了解异常处理(exception handling)的成本

    1.为了在运行期处理异常,程序必须做大量额外的工作.比如,即使抛出异常,也必须保证离开作用域的栈上对象执行析构方法.因此,必须记录try语句的进入点和离开点,记录catch语句能够处理的异常等.这就意 ...

  5. velocity模板技术生成word文档

    本文介绍採用velocity技术在Java中生成word文档的方法. 1.新建一个word文档,编辑内容例如以下: 2.将上述word文档另存为htm格式的文件 3.新建一个Java Project项 ...

  6. delphi 取得汉字的第一个字母

    功能说明://取得汉字的第一个字母 function GetPYIndexChar( hzchar:string):char;begin  caseWORD(hzchar[1])shl8+WORD(h ...

  7. XML Helper XML操作类

    写的一个XML操作类,包括读取/插入/修改/删除. using System;using System.Data;using System.Configuration;using System.Web ...

  8. ural 1993 This cheeseburger you don't need

    顺次存到{} [] () 遇到逗号就处理下,最后处理逗号之后的 #include <iostream> #include <cstring> #include <stri ...

  9. Linux守护进程(init.d和xinetd)

    http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html

  10. 浅谈Linux的内存管理机制

    转至:http://ixdba.blog.51cto.com/2895551/541355 一 物理内存和虚拟内存          我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此, ...