xml文件创建,读取
- 格式:doc
- 大小:91.00 KB
- 文档页数:9
c#来创建和读取xml文档 文章出处: 发布时间:2004-12-31 点击:0
扩展标记语言xml(extensible markup language),是由w3c组织制定的。做为用于替代html语言的一种新型的标记语言,xml内部有着很多基本标准,xml就是通过与这些相关标准地结合,应用于科学计算、电子出版、多媒体制作和电子商务的。c#作为一种新型的程序语言,是.net框架的一个重要组成部分,他和xml的关系颇深。本文就从一个方面来探讨一下这二者的关系。即:看用c#如何来创建和读取xml文档。
一. 本文程序设计和运行的软件环境: 1.微软公司视窗2000服务器版 2..net framework sdk beta 2
二. c#创建xml文档: 在本文中我们来介绍一下用c#创建xml文档的二种方法,这二种方法各有千秋,第一种创建起来更灵活,第二种创建起来更方便。 1.c#创建xml文档的第一种方法: 这一种方法是按照按照xml的结构一步一步的构建xml文档。c#构建xml文档通过.net framework sdk中的命名空间"system.xml"中封装的各种类来实现的。下面就按照一个xml典型文档结构来介绍一下。 ◇首先要创建一个空的xml文档: 在命名空间"system.xml"中有一个类"xmldocument",c#通过这个类来描述xml文档。下面是用c#创建一个xml文档。 xmldoc = new system.xml.xmldocument ( ) ;
◇在xml的文档的最头部加入xml的声明段落: 利用"xmldocument"类中的 "createnode" 方法可以创建一个指定类型的xml节点,"createnode" 方法的调用方法总共有三种,在本文中使用的其一般的方法,具体语法如下: xmldocument.createnode method ( xmlnodetype , string , string )
然后在利用"xmldocument"类中的"appendchild"方法在xml文档中加入此节点,用c#在xml文档中加入声明段落实现的语句如下: xmlnode = xmldoc.createnode ( xmlnodetype.xmldeclaration , "" , "" ) ; xmldoc.appendchild ( xmlnode ) ;
◇为xml文档加入元素(element): 加入数据内容是通过元素,在"xmldocument"类中提供了二个方法:"createelement"和"createtextnode"。其中第一个方法是在xml中创建一个元素,另外一个方法是为创建的元素指定文本值。下面是为上面创建的xml文档加入一个根元素。 xmlelem = xmldoc.createelement ( "" , "root" , "" ) ; xmltext = xmldoc.createtextnode ( "root text" ) ;
注释:其中"xmlelem"是创建的"xmlelement"对象,"xmltext"是"xmltext"对象 有了创建一个xml元素的例子,就可以根据xml文档中数据的不同的结构来创建其他的数据了。
2.c#创建xml文档的第一种方法的源程序代码(no1.cs): using system ; using system.xml ; class mainclass { xmldocument xmldoc ; xmlnode xmlnode ; xmlelement xmlelem ; xmlelement xmlelem2 ; xmltext xmltext ;static void main ( string [ ] args ) { mainclass app = new mainclass ( ) ; } public mainclass ( ) { xmldoc = new xmldocument ( ) ; //加入xml的声明段落 xmlnode = xmldoc.createnode ( xmlnodetype.xmldeclaration , "" , "" ) ; xmldoc.appendchild ( xmlnode ) ; //加入一个根元素 xmlelem = xmldoc.createelement ( "" , "root" , "" ) ; xmltext = xmldoc.createtextnode ( "root text" ) ; xmlelem.appendchild ( xmltext ) ; xmldoc.appendchild ( xmlelem ) ; //加入另外一个元素 xmlelem2 = xmldoc.createelement ("sampleelement" ) ; xmlelem2 = xmldoc.createelement ( "" , "sampleelement" , "" ) ; xmltext = xmldoc.createtextnode ( "the text of the sample element" ) ; xmlelem2.appendchild ( xmltext ) ; xmldoc.childnodes.item(1).appendchild ( xmlelem2 ) ; //保存创建好的xml文档 try { xmldoc.save ( "c:\\data.xml" ) ; } catch ( exception e ) { //显示错误信息 console.writeline ( e.message ) ; } console.readline ( ) ; } }
3.c#创建xml文档的第二种方法: 在介绍完第一种方法以后,我想每一个读者都感觉到用c#创建xml文档是一项比较烦杂的工作了,因为不仅要了解创建的知识,还要了解文档的结构,这样创建的过程就是一步一步的了。下面就来介绍一种比较容易的创建方法,这种创建方法是直接定义xml文档,然后把他保存到文件中就可以了。 ◇创建一个xml文档: 这一点和第一种方法一样,在这里就不介绍了。
◇通过"xmldocument"类中的"loadxml"方法,直接在文档中加入想要加入的xml数据。当然你加入的xml应该符合xml的语法,不然产生的文件也没有什么意义了。下面是加入xml的具体代码: doc.loadxml ( " " + "" + "ma jin hu" + " 239000 " + "feng huang street" + "chu zhou city" + " anhui " + "" + "" + "wang tian" + " 239000 " + "lang ya street" + "he fei city" + " anhui " + "" + "" + "zou wen biao" + " 100000 " + "sai di street" + "bei jin city" + "bei jin" + "" + "" ) ;
把保存xml文档到文件中: 保存xml文档是通过"xmldocument"类中的"save"方法来实现的。具体如下: doc.save ( "data.xml" ) ;
◇c#创建xml文档的第二种方法的源程序代码(no2.cs): using system ; using system.io ; using system.xml; public class sample { public static void main ( ) { //创建一个xmldocument对象 xmldocument doc = new xmldocument ( ) ; doc.loadxml ( " " + "" + "ma jin hu" + " 239000 " + "feng huang street" + "chu zhou city" + " anhui " + "" + "" + "wang tian" + " 239000 " + "lang ya street" + "he fei city" + " anhui " + "" + "" + "zou wen biao" + " 100000 " + "sai di street" + "bei jin city" + "bei jin" + "" + "" ) ; //保存这个文档到文件中