XML与数据集相关的操作
一、XML 1、含义:(eXtensible Markup Language)可扩展标记语言 a、标记语言:计算机所能理解的信息符号 b、可扩展:计算机有通用的标记语言如HTML,标准通用的标记语言标签是规定好的,但是XML可以有相关人士自己根据需要自由定义其标签,即其可扩展性。 2、用途:传送及携带数据信息,不用来表现或展示数据。用途的焦点是 它说明数据时什么。具体展示就表现由使用它的应用程序来决定。 而HTML则用来表现数据。 3、例子 <?xml version="1.0"?> <小纸条> <收件人>大元</收件人> <發件人>小張</發件人> <主題>問候</主題> <具體內容>早啊,飯吃了沒? </具體內容> </小纸条> XML序言<?xml version="1.0"?>,这一行代码会告诉解析器或浏览器这个文件应该按照XML规则进行解析。 二、XML的相关操作 1、对XML文件的节点属性修改并保存 using System.Xml; XmlDocument xmlDoc = new XmlDocument(); //定义XML文件对象 2、可以通过DataTable,直接将数据集转化并保存为XML文件 protected void DBToXML() DataRow dr = dt.NewRow(); 但是这样转化过来的 <?xml version="1.0" standalone="yes"?> 根节点只能是<DocumentElement>,没有办法自定义 3、为了实现上述问题,使用了 StringBuilder(可变的字符串序列) 将标签变量等拼接起来 StringBuilder sbXML = new StringBuilder(); sbXML.Append(" <Project xmlns='http://schemas.microsoft.com/project'> "); sbXML.Append(" <Task> "); sbXML.Append(" <ID> "); sbXML.Append(" <Name> "); sbXML.Append(" <OutlineNumber> "); sbXML.Append(" <Start> "); sbXML.Append(" <Finish> "); sbXML.Append(" <Summary> "); sbXML.Append(" <PercentComplete> "); sbXML.Append(" </Tasks> "); 上述代码实现了将XML拼接好,并显示到客户端,但是并未实现保存为XML文件 4、为了实现将拼接好的StringBuilder保存为XML文件,使用FileStream(文件流) FileStream对象表示在磁盘或网络路径上指向文件的流,这个类提供了在文件中读写字节的方法。 所以,将3中最后三行代码替换为 try { //1.创建文件流 FileStream fileStream = new FileStream("HiprojectWeb/test.xml",FileMode.Create); //2.创建写入器 StreamWriter streamWriter = new StreamWriter(fileStream); //3.将内容写入文件 streamWriter.WriteLine(sbXML); //4.关闭写入器 streamWriter.Close(); //5.关闭文件流 fileStream.Close(); } catch (Exception e) { } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |