在.net framework 中,經常使用xml 作為儲存和傳輸各種資料的格式。
dataset 中的資料可以轉換成xml 的形式來表示和儲存。
我們可以使用xml 物件同步和轉換dataset 的資料,而dataset 也可以儲存和傳輸xml 格式的資料。
xml 與 dataset 的關係如下圖所示:
dataset 物件的常用方法如下:
a.使用readxml( ) 方法:從檔案或流中載入xml 資料,填充dataset 物件。
dataset 物件.readxml( 檔案路徑字串|stream 物件, xmlreadmode 列舉值[可以省略] ) ;
b.使用writexml( ) 方法:將dataset 物件中的資料以xml 格式寫出到檔案或流中。
dataset 物件.writexml( 檔案路徑字串| stream 物件, xmlwritemode 列舉值[可以省略] ) ;
c.使用readxmlschema( ) 方法:將shema 模式檔案讀入dataset 物件。
dataset 物件.readxmlschema( stream | filename | textreader | xmlreader ) ;
d.使用writexmlschema( ) 方法:將dataset 物件的shema 模式檔案寫出到檔案或流。
dataset 物件.writexmlschema( stream | filename | textwriter | xmlwriter ) ;
e.使用getxmlschema( ) 方法:將dataset 物件的shema 模式,以字串的形式獲得。
dataset 物件.getxmlschema( );
f.使用getxml( ) 方法:將dataset 物件的xml 格式的資料集,以字串的形式獲得。
dataset 物件.getxml( );
接下來,通過乙個綜合示例進行演示。
person.xml 檔案如下:
<
?xml
version="
1.0"
encoding="
utf-8"?
>
<
persons
>
<
person
>
<
id>
0<
/id>
<
name
>
mark
<
/name
>
<
age>
18<
/age
>
<
/person
>
<
person
>
<
id>
1<
/id>
<
name
>
jorn
<
/name
>
<
age>
22<
/age
>
<
/person
>
<
person
>
<
id>
2<
/id>
<
name
>
aderson
<
/name
>
<
age>
30<
/age
>
<
/person
>
<
/persons
>
customer.xsd 檔案如下:
<
?xml
version="
1.0"
encoding="
utf-8"?
>
<
xs:schema
xmlns:xs="
"xmlns:msdata="
urn:schema-microsoft-com:xml-msdata
"elementformdefault="
qualified
"attributeformdefault="
unqualified"id
="customers
">
<
xs:element
name="
customers
"msdata:isdataset="
true
"msdata:enforceconstraints="
false
">
<
xs:complextype
>
<
xs:choice
maxoccurs="
unbounded
">
<
xs:element
name="
customer
"type="
customerstype"/
>
<
/xs:choice
>
<
/xs:complextype
>
<
/xs:element
>
<
xs:complextype
name="
customerstype
">
<
xs:sequence
>
<
xs:element
name="
customersid
"type="
xs:string
"minoccurs="
0"/>
<
xs:element
name="
customersname
"type="
xs:string
"minoccurs="
0"/>
<
xs:element
name="
customersage
"type="
xs:int
"minoccurs="
0"/>
<
/xs:sequence
>
<
/xs:complextype
>
<
/xs:schema
>
winform 程式的源**如下:
namespace
dataset_xml_demo
datasetds=
newdataset()
;//讀取xml文件的資料到dataset
private
void
btnreadxml_click
(object
sender,
eventargse)
//將dataset中的資料寫出到xml文件
private
void
btnwritexml_click
(object
sender,
eventargse)
//載入schema給dataset
private
void
btnreadxmlschema_click
(object
sender,
eventargse)
//將dataset的schema寫出
private
void
btnwritexmlschema_click
(object
sender,
eventargse)
//getxml()方法的使用
private
void
btngetxml_click
(object
sender,
eventargse)
//getxmlschema()方法的使用
private
void
btngetxmlschema_click
(object
sender,
eventargse)
}}
winform 程式的介面效果如下:
XML與DataSet的相互轉換
一 xml 與 dataset 的關係如下圖所示 二 dataset 物件的常用方法如下 a.使用readxml 方法 從檔案或流中載入xml 資料,填充dataset 物件。dataset 物件.readxml 檔案路徑字串 stream 物件,xmlreadmode 列舉值 可以省略 b.使用w...
XML與DataSet的相互轉換
xmldatasetconvert 該類提供了四種方法 1 將xml物件內容字串轉換為dataset 2 將xml檔案轉換為dataset 3 將dataset轉換為xml物件字串 4 將dataset轉換為xml檔案 xmldatasetconvert.cs using system using ...
DataSet與xml檔案的互相轉換
dataset轉換為xml檔案 將dataset轉換為xml檔案 private static void convertdatasettoxmlfile dataset xmlds,string xmlfile catch system.exception ex finally xml與datase...