XML文件的操作说明
说明:
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>