本文简单介绍一个xml文档读写的方法。
利用XMLTextWriter创建XML文档,这个类是在System.Xml的命名空间下,XMLWriter 类包含了写XML文档所需的方法和属性,他是XmlTextwriter类和XMLNodeWriter类的基类,该类包含了WriterNode、WriterString、WriterAttributes、WriteStartElement和WritEndElement等一系列写XML文档的方法,其中有些方法是成对出现的,比如你写入一个元素,首先要调用WriteStartElement方法写入你要填写的内容,随后你必须要调用WriteEndElement方法来结束你这个元素输入,这就好比你写了一个<html>(在这相当于调用WriteStartElement),然后你会在页面对应的文章写上结束标签</html>(在这相当于调用WriteEndElement),这种写法只适用于类似HTML标签中的<html></html>、<body></body>这些外层标签,而类似HTML中的<span></span>、<font></font>这些标签在写xml是只调用WriteElementString(“标签名字”,"标签内容");就是如此的简单,接下来咱看看代码:
1 public void WriteXml(string path) 2 { 3 string path = Server.MapPath("Test.xml"); 4 using (XmlTextWriter writer = new XmlTextWriter(path,null)) 5 { 6 writer.Formatting = Formatting.Indented;//表示文档缩进 7 writer.Indentation = 3;//缩进3字节 8 9 writer.WriteStartDocument();//xml文档声明 10 writer.WriteComment("当前时间:"+DateTime.Now.ToString("yyyy-MM-dd"));//这里可以写指定的注释 11 12 writer.WriteStartElement("Students"); 13 writer.WriteStartElement("Student"); 14 writer.WriteAttributeString("Class", "5年级"); 15 16 writer.WriteElementString("name", "张三"); 17 writer.WriteElementString("sex", "男"); 18 writer.WriteElementString("height", "183cm"); 19 20 writer.WriteEndElement(); 21 22 writer.WriteStartElement("Student"); 23 writer.WriteAttributeString("Class", "4年级"); 24 25 writer.WriteElementString("name", "李四"); 26 writer.WriteElementString("sex", "女"); 27 writer.WriteElementString("height", "176cm"); 28 29 writer.WriteEndElement(); 30 writer.WriteEndElement(); 31 32 } 33 }
运行以上代码;得到的结果:
1 <?xml version="1.0" ?> 2 - <!-- 当前时间:2015-04-21-->
3 4 - <Students> 5 - <Student Class="5年级"> 6 <name>张三</name> 7 <sex>男</sex> 8 <height>183cm</height> 9 </Student> 10 - <Student Class="4年级"> 11 <name>李四</name> 12 <sex>女</sex> 13 <height>176cm</height> 14 </Student> 15 </Students>