首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • ★DataSet 数据写入XML★ [已结贴,结贴人:hs1983]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 11:40:51 楼主
    如何将DataSet中的数据以下面形式写入XML??
    dataset数据如下:
    year AAA  BBB  CCC
    2001 8890 6560 4580
    2002 7680 6990 5320
    2003 8020 7560 7360

    写入XML的样式:
    <?xml version="1.0" standalone="yes"?>
    <NewDataSet>
      <Table year="2001" AAA="8890" BBB="6560" CCC="4580" />
      <Table year="2002" AAA="7680" BBB="6990" CCC="5320" />
      <Table year="2002" AAA="8020" BBB="7560" CCC="7360" />
    </NewDataSet>

    直接用DataSet.WriteXml()写出来的好象是如下格式:
    <?xml version="1.0" standalone="yes"?>
    <NewDataSet>
      <Table>
        <year>2001 </year>
        <AAA>8890 </AAA>
        <BBB>6560 </BBB>
        <CCC>4580 </CCC>
      </Table>
      <Table>
        <year>2002 </year>
        <AAA>7680 </AAA>
        <BBB>6990 </BBB>
        <CCC>5320 </CCC>
      </Table>
      <Table>
        <year>2003 </year>
        <AAA>8020 </AAA>
        <BBB>7560 </BBB>
        <CCC>7360 </CCC>
      </Table>
    </NewDataSet>
    50  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • mylibin
    • 等级:
    发表于:2008-06-05 11:44:041楼 得分:10
    你把它都写成属性
      不要写成节点
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 11:47:112楼 得分:10
    xmlnode.attributes
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 11:50:273楼 得分:0
    引用 1 楼 mylibin 的回复:
    你把它都写成属性
      不要写成节点

    上面的兄弟可以给出代码吗?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 11:51:264楼 得分:5
    DataSet ds;
    ds.WriteXml()
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 11:53:375楼 得分:0
    引用 4 楼 raoshaoquan 的回复:
    DataSet ds;
    ds.WriteXml()

    你写的我知道,我是问如何写成属性?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 12:01:336楼 得分:10
    xmlnode.attributes
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-05 12:07:437楼 得分:15
    tring sqlStr = "select msg_date as date,msg_user as name,msg_admin as isadmin,msg_content as content,msg_comment as comment from user_message where msg_scene ='001'";
                SqlConnection sqlConn = new SqlConnection(strConn);
                sqlConn.Open();
                DataSet ds = new DataSet();
                SqlCommand sqlCmd = new SqlCommand(sqlStr, sqlConn);
                sqlCmd.ExecuteNonQuery();
                SqlDataAdapter sqlAdapter = new SqlDataAdapter(sqlCmd);
                sqlAdapter.Fill(ds, "msg");//添充dataset时,对其表名重新命名,当然也可以不对其重新命名
               

             
                /**////注意
                ///操作dataSet对像的表时,要用新命名的字段名称
                ds.Tables["msg"].Columns["name"].ColumnMapping = MappingType.Attribute;//把某一列做为属性的操作
                ds.Tables["msg"].Columns["date"].ColumnMapping = MappingType.Attribute;//把某一列做为属性的操作
                ds.Tables["msg"].Columns["isadmin"].ColumnMapping = MappingType.Attribute;//把某一列做为属性的操作
                //ds.Tables["city_users"].Columns["user_pwd"].ColumnMapping = MappingType.Attribute;//把某一列做为属性的操作

                XmlTextWriter xtw = new XmlTextWriter("x.xml", Encoding.GetEncoding("utf-8"));
                xtw.WriteRaw(" <?xml  version=\"1.0\"  encoding=\"utf-8\"?>");//手动写入原始标记
               
                //for (int i = 0; i < ds.Tables["city_users"].Rows.Count;i++ )
                ds.DataSetName = "mapmsg";//这里改了dataSet对像的名称,对应了XML文档的根结点
                ds.WriteXml(xtw);
               
                xtw.Close();
                sqlConn.Close();
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved