XML的汇出与读取

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

XML逐渐成为现今数据交换的一种标准格式,所以我们也要了解ASP.NET 如何汇出与读取XML?。XML 档的汇出与读取主要是透过DataSet 对象的WriteXML 以及ReadXML 方法,不过要执行档案的读写动作必需使用FileStream 对象来进行档案的操作,这个档案的名称地址为System.IO。

档案操作

要将XML 汇出成档案要利用FileStream 对象开启档案。FileStream 的使用语法如下所示:

Dim 变数As FileStream

变数=New FileStream(文件名称, FileMode, FileAccess)

其中FileMode 的参数如下表所示:

其中FileAccess 的参数如下表所示:

XML 档案的汇出

下列范例在使用者按下「汇出XML」后,将第八章的会员数据表汇出成XML 格式:

<%@Import Namespace="System.IO"%>

<%@Import Namespace="System.Data"%>

<%@Import Namespace="System.Data.ADO"%>

<Form Id="Form1" Runat="Server">

<ASP:Button Id="btnOutPort" Text="汇出XML"

OnClick="btnOutPort_Click"

Runat="Server"/>

<ASP:Label Id="Label1" Runat="Server"/>

</Form>

<Script Language="VB" Runat="Server">

Sub btnOutPort_Click(Sender As Object,e As Eventargs)

Label1.Text="汇出中..."

Dim dscA As ADODataSetCommand=New ADODataSetCommand("Select * From

Members", _

"Provider=Microsoft.Jet.OLEDB.4.0;Data

Source=C:\InetPub\wwwroot\CR\Ch08\MyWeb.Mdb")

Dim dsDataSet As DataSet=New DataSet

dscA.FillDataSet(dsDataSet,"Members")

Dim fsA As FileStream=New FileStream(Server.MapPath("Members.xml"), _

FileMode.OpenOrCreate,

FileAccess.Write)

dsDataSet.WriteXML(fsA)

fsA.Close()

Label1.Text="汇出完毕"

End Sub

</Script>

</Html>

上述范例首先我们先将Members 数据表填入DataSet 对象中,然后再宣告一个FileStream 对象并指明要在网页所在路径开启Members.xml 档,如果有这个档案则开启否则就产生,而且这个档案是唯写。档案已经开启完成后,我们就可以利用DataSet 的WriteXML 方法将XML 格式的数据写入档案中,最后将FileStream 对象利用Close 方法关闭即可。所汇出的XML 档如下图所示:

XML 档案的读取

下列范例在使用者按下「汇入XML」后,将刚刚所汇出的XML档案利用DataSet 对象的ReadXML

方法汇入:

<%@Import Namespace="System.IO"%>

<%@Import Namespace="System.Data"%>

<Form Id="Form1" Runat="Server">

<ASP:Button Id="btnOutPort" Text="汇入XML"

OnClick="btnOutPort_Click"

Runat="Server"/>

<ASP:Label Id="Label1" Runat="Server"/>

<ASP:DataGrid Id="dgA" Runat="Server"/>

</Form>

<Script Language="VB" Runat="Server">

Dim dsDataSet As DataSet=New DataSet

Sub btnOutPort_Click(Sender As Object,e As Eventargs)

Label1.Text="汇入中..."

Dim fsA As FileStream=New FileStream(Server.MapPath("Members.xml"), _

FileMode.Open,

FileAccess.Read)

dsDataSet.ReadXML(fsA)

fsA.Close()

dgA.DataSource=dsDataSet.Tables("Members").DefaultView

dgA.DataBind()

Label1.Text="汇入完毕"

End Sub

</Script>

</Html>

上述范例首先我们宣告一个FileStream 对象并指明要在网页所在路径开启Members.xml 档,而且这个档案是惟读。档案已经开启完成后,我们就可以利用DataSet 的ReadXML 方法将XML格式的数据读入DataSet 对象中,最后将FileStream 对象利用Close 方法关闭即可。所入出的XML 资料如下图所示:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有