最进在做一个项目,需要用到xml做配置文件,但是自己忘的差不多了,所以就温习了一遍。以下是我项目中所用到的,所以肯定也不全面。

1、新建xml文件

 using System.Xml;//需要引用

 string xmlPath = Application.StartupPath;
             string xmlName = "listorder.xml";

 public void CreateXmlFile()
         {
             XmlDocument xmlDoc = new XmlDocument();
             //创建类型声明节点
             XmlNode node=xmlDoc.CreateXmlDeclaration("1.0","utf-8","");
             xmlDoc.AppendChild(node);
             //创建根节点
             XmlNode root = xmlDoc.CreateElement("Persons");
             xmlDoc.AppendChild(root);  

             XmlNode node1 = xmlDoc.CreateNode(XmlNodeType.Element, "Person", null);
             CreateNode(xmlDoc, node1, "name", "张三");
             CreateNode(xmlDoc, node1, "sex", "男");
             CreateNode(xmlDoc, node1, ");
             root.AppendChild(node1);  

             XmlNode node2 = xmlDoc.CreateNode(XmlNodeType.Element, "User", null);
             CreateNode(xmlDoc, node2, "name", "李四");
             CreateNode(xmlDoc, node2, "sex", "女");
             CreateNode(xmlDoc, node2, ");
             root.AppendChild(node2);  

             try
             {
                 xmlDoc.Save(xmlPath + "\\" + xmlName);
             }
             catch (Exception e)
             {
                 //显示错误信息
                 MessageBox.Show(e.Message, "注意", MessageBoxButtons.OK, MessageBoxIcon.Information);
 }  

         }  

         /// <summary>
         /// 创建节点
         /// </summary>
         /// <param name="xmldoc">xml文档</param>
         /// <param name="parentnode">父节点</param>
         /// <param name="name">节点名</param>
         /// <param name="value">节点值</param>
         ///
         public void CreateNode(XmlDocument xmlDoc,XmlNode parentNode,string nodeName,string value)
         {
             XmlNode node = xmlDoc.CreateNode(XmlNodeType.Element, nodeName, null);
             node.InnerText = value;
             parentNode.AppendChild(node);
         }  

生成效果如下:

<?xml version="1.0" encoding="utf-8"?>
<Users>
  <User>
    <name>张三</name>
    <sex>男</sex>
    <age>6</age>
  </User>
  <User>
    <name>李四</name>
    <sex>女</sex>
    <age>7</age>
  </User>
</Users>  

2、读取xml文件

         XmlDocument doc = new XmlDocument();
                 doc.Load(xmlPath + "\\" + xmlName);
                 //List<PlayList> pModeList = new List<PlayList>();

                 // 得到根节点VideoS
                 XmlNode xn = doc.SelectSingleNode("VideoS");

                 // 得到根节点的所有子节点
                 XmlNodeList xnl = xn.ChildNodes;

                 foreach (XmlNode xn1 in xnl)
                 {
                     pModel = new PlayList();

                     // 将节点转换为元素,便于得到节点的属性值
                     XmlElement xe = (XmlElement)xn1;
                     // 得到Video节点的所有子节点
                     XmlNodeList xnl0 = xe.ChildNodes;

                     pModel.PlayID = ).InnerText);
                     pModel.PlayName = xnl0.Item().InnerText;
                     pModel.PlayLx = xnl0.Item().InnerText;
                     pModel.PlayTime = ).InnerText);

                     pModeList.Add(pModel);

                 }

C#操作xml的更多相关文章

  1. Asp.Net 操作XML文件的增删改查 利用GridView

    不废话,直接上如何利用Asp.NET操作XML文件,并对其属性进行修改,刚开始的时候,是打算使用JS来控制生成XML文件的,但是最后却是无法创建文件,读取文件则没有使用了 index.aspx 文件 ...

  2. php中通过DOM操作XML

    DOM文档在js里早就接触过,知道DOM不但可以操作html文档,还可以操作XHTML,XML等文档,有着极强的通用性,下面我们通过两个小例子,看看在PHP中是如何用DOM操作XML文档的,和js中差 ...

  3. 使用dom4j操作XML

    DOM4J介绍 DOM4J是使用Java语言编写的,用于读写及操作XML的一套组件,DOM4J同时具有DOM修改文件的优点和SAX读取快速的优点. DOM4J的使用 首先下载dom4j的JAR包,我用 ...

  4. 使用JDOM操作XML

    JDOM介绍 JDOM是使用Java语言编写的,用于读写及操作XML的一套组件,Jdom同时具有DOM修改文件的优点和SAX读取快速的优点. JDOM的使用 首先下载JDOM的JAR包,本文使用的是j ...

  5. php : DOM 操作 XML

    DOM 操作 XML 基本用法 XML文件: person.XML <?xml version="1.0" encoding="utf-8" ?> ...

  6. Strus2第一次课:dom4j操作xml

    先从底层的xml操作技术记录: 当我们新建一个项目,什么架包都没加入的时候,java提供了 org.w3c.dom给我们操作xml里面的元素 import org.w3c.dom.Document; ...

  7. .NET 操作XML

    在C#.net中如何操作XML 需要添加的命名空间: using System.Xml; 定义几个公共对象: XmlDocument xmldoc ; XmlNode xmlnode ; XmlEle ...

  8. php操作xml

    最近计划写个人的小网站,一系列原因选择了用php来写,最大的问题就是虽然php很流行,但我从来没有接触过php,看了一个多星期的基本语法后做些小练习热热身,但是期间是各种问题啊,主要是对php不熟悉, ...

  9. JavaScript操作XML

    JavaScript操作XML (一) JavaScript操作XML是通过XML DOM来完成的.那么什么是XML DOM呢?XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准 ...

  10. C#操作XML方法集合

    一 前言 先来了解下操作XML所涉及到的几个类及之间的关系  如果大家发现少写了一些常用的方法,麻烦在评论中指出,我一定会补上的!谢谢大家 * 1 XMLElement 主要是针对节点的一些属性进行操 ...

随机推荐

  1. Liferay中SQL打印参数

      XX\tomcat-7.0.42\webapps\ROOT\WEB-INF\classes\log4j.properties log4j.rootLogger=INFO, CONSOLE log4 ...

  2. jsp标准标签库

    抄袭自:http://www.cnblogs.com/hongten/archive/2011/05/14/2046005.html JSP标准标签库     Pass by xkk ,and aut ...

  3. Kinect测量人体身高的程序

    对着书上敲得,从中体会kinect骨骼识别与深度识别的原理.大体原理是懂了,但有些细节还没有完全弄明白. using System; using System.Collections.Generic; ...

  4. HashCode equals

    HashCode: hashcode就是一个签名.当两个对象的hashcode一样时,两个对象就有可能一样.如果不一样的话两个对象就肯定不一样.一般用hashcode来进行比较两个东西是不是一样的,可 ...

  5. ASP.NET MVC 之 View 测试

    项目又出问题了!手贱了一下,使用某个工具整理了一下 View 中的内容,不经意之间,将 View 的输出中大小写不小心搞错了,导致输出的内容没有办法正常解析. 这种问题太隐蔽了,下次再遇到怎么办呢? ...

  6. Bootstrap 3 How-To #2 标题,链接与按钮

    这个系列的要点来自一本名为 Twitter Bootstrap Web Development How-to 的书,但是,这本书的内容是基于以前版本的,与最新的 3.0 并不一致. 为了方便学习和使用 ...

  7. (Loadrunner)Error: Failed to send data by channels - post message failed.(转)

    把Diagnotics-configure-Web Page Diagnotics 设置为 转自: http://www.51testing.com/html/64/371664-3708254.ht ...

  8. Atom 编辑器插件:amWiki 轻文库

    amWiki 是一款基于 Javascript 脚本语言.依赖 Atom 编辑器.使用 Markdown 标记语法的轻量级开源 wiki 文库系统. amWiki 致力于让大家可以更简单.更便捷的建设 ...

  9. Maven中央存储库

    当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载.首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没有找到,然后把它会从默 ...

  10. GlusterFS特性介绍

    下面是GlusterFS的一些特性 规范的接口 GlusterFS服务器与POSIX兼容,使用支持文件扩展属性的磁盘文件系统(如ext4.XFS)来存储磁盘上的数据.同时,可以通过业界标准的访问协议如 ...