XML文件的操作说明
2016-02-04 10:23
316 查看
说明: C#中XmlNode与XmlElement的区别如下: xmlnode类表示xml文档中的单个节点,其命名空间为:System.Xml。XmlNode的三个最主要的子类包括:XmlDocument、XmlDataDocument及XmlDocumentFragment。 XmlElement继承自XmlLinkedNode又继承自XmlNode类,由此可知XmlElement是XmlNode的子类。 XmlElement是特殊的XmlNode类,Xml节点有多种类型:属性节点、注释节点、文本节点、元素节点等。也就是XmlNode是这多种节点的统称。但是XmlElement专门指的就是元素节点。 XmlElement是具现类,可以直接实例化,而XmlNode是抽象类。 XmlElement拥有众多对Attribute的操作方法,可以方便的对其属性进行读写操作。 xmldoc = new XmlDocument ( ) ; //加入XML的声明段落,<?xml version="1.0" encoding="gb2312"?> XmlDeclaration xmldecl; xmldecl = xmldoc.CreateXmlDeclaration("1.0","gb2312",null); xmldoc.AppendChild (xmldecl); //加入一个根元素 xmlelem = xmldoc.CreateElement ( "" , "Employees" , "" ) ; xmldoc.AppendChild (xmlelem) ; //加入另外一个元素 for(int i=1;i<3;i++) { XmlNode root=xmldoc.SelectSingleNode("Employees");//查找<Employees> XmlElement xe1=xmldoc.CreateElement("Node");//创建一个<Node>节点 xe1.SetAttribute("genre","DouCube");//设置该节点genre属性 xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性 XmlElement xesub1=xmldoc.CreateElement("title"); xesub1.InnerText="CS从入门到精通";//设置文本节点 xe1.AppendChild(xesub1);//添加到<Node>节点中 XmlElement xesub2=xmldoc.CreateElement("author"); xesub2.InnerText="候捷"; xe1.AppendChild(xesub2); XmlElement xesub3=xmldoc.CreateElement("price"); xesub3.InnerText="58.3"; xe1.AppendChild(xesub3); root.AppendChild(xe1);//添加到<Employees>节点中 } //保存创建好的XML文档 xmldoc.Save ( Server.MapPath("data.xml") ) ;
结果:在同名目录下生成了名为data.xml的文件,内容如下,
<?xml version="1.0" encoding="gb2312"?> <Employees> <Node genre="DouCube" ISBN="2-3631-4"> <title>CS从入门到精通</title> <author>候捷</author> <price>58.3</price> </Node> <Node genre="DouCube" ISBN="2-3631-4"> <title>CS从入门到精通</title> <author>候捷</author> <price>58.3</price> </Node> </Employees>
相关文章推荐
- jquery复选框 选中事件 及其判断是否被选中
- android 自定义控件
- 淘宝网采用什么技术架构来实现网站高负载的(转载)
- 面向对象编程与面向过程编程在开发思想上的区别
- 如果你已经这样了,那你必须要跳槽[转]
- Machine Learning
- redhat 配置 yum 源的两种方法
- java数据库编程——元数据(metadata)+web 与企业应用中的连接管理
- 160. Intersection of Two Linked Lists
- 学习Discuz! X3.2记录:自定义论坛帖子字段,在门户中显示帖子列表
- lufylegend教程:如何创建循环移动的背景
- mysql存储过程详解
- 只有程序员才会下载的黄片儿
- react-native 导航栏
- js获取宽、高
- 浅谈单元测试之(一):单元测试的意义
- ubuntu mount命令的使用
- elastic查询笔记(2)
- spring的aop拦截action中的方法会报java.lang.NoSuchMethodException: $Proxy97.test()异常
- 责任链模式——使编程更有灵活性