把XML数据流或文本加载到DataSet

 

在ADO.NET2.0中增强了与XML文件的结合,DataSet中的数据可以从XML读取数据流或进行XML文档创建。使用ReadXml方法读取 XML 流或文档的内容并将数据加载到DataSet中。DataSet使用ReadXml读取数据的时候,同时也会将XML文件的结果读取到DataSet数据集中。DataSet使用ReadXml读取数据的方式, 实现代码如下所示。

DataSet ds= new DataSet();

ds.ReadXml(xml文件名);

 

 

XML文件代码如下所示:

<?xml version="1.0" standalone="yes"?>

<个人信息>

 <xs:schema id="个人信息" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

    <xs:element name="个人信息" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">

      <xs:complexType>

        <xs:choice minOccurs="0" maxOccurs="unbounded">

          <xs:element name="个人信息资料">

            <xs:complexType>

              <xs:sequence>

                <xs:element name="姓名" msdata:Caption="列属性" type="xs:string" minOccurs="0" />

                <xs:element name="性别" msdata:Caption="列属性" type="xs:string" minOccurs="0" />

                <xs:element name="年龄" msdata:Caption="列属性" type="xs:string" minOccurs="0" />

                <xs:element name="专业" msdata:Caption="列属性" type="xs:string" minOccurs="0" />

              </xs:sequence>

            </xs:complexType>

          </xs:element>

        </xs:choice>

      </xs:complexType>

    </xs:element>

 </xs:schema>

 <个人信息资料>

    <姓名>张三</姓名>

    <性别>男</性别>

    <年龄>20</年龄>

    <专业>计算机</专业>

 </个人信息资料>

 <个人信息资料>

    <姓名>王非</姓名>

    <性别>女</性别>

    <年龄>21</年龄>

    <专业>文学</专业>

 </个人信息资料>

 <个人信息资料>

   <姓名>李四</姓名>

    <性别>男</性别>

    <年龄>25</年龄>

    <专业>语文</专业>

 </个人信息资料>

 <个人信息资料>

    <姓名>李飞</姓名>

    <性别>女</性别>

    <年龄>23</年龄>

    <专业>数学</专业>

 </个人信息资料>

 <个人信息资料>

    <姓名>王梦</姓名>

    <性别>女</性别>

    <年龄>20</年龄>

    <专业>化学</专业>

 </个人信息资料>

</个人信息>

程序代码:

//找到存放xml文件的路径

FileStream stream = new FileStream("c:\\个人信息.xml", FileMode.Open);

//声明xml变量

XmlDataDocument doc = new XmlDataDocument();

//将xml读取到dataset中

doc.DataSet.ReadXml(new StreamReader(stream));

//将数据绑定到GridView1

if (doc.DataSet.Tables.Count != 0 && doc.DataSet.Tables[0].Rows.Count != 0)

{

GridView1.DataSource = doc.DataSet.Tables[0];

GridView1.DataBind();

}

stream.Close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值