xml导入和导出

将数据库里的数据导出到xml文件:

string str = ConfigurationManager.ConnectionStrings["sqlcnn"].ConnectionString;

        SqlConnection con = new SqlConnection(str);

        SqlCommand cmd = con.CreateCommand();

        con.Open();

        cmd.CommandText = "select * from book";

        cmd.ExecuteScalar();

        SqlDataAdapter adapter = new SqlDataAdapter(cmd);

        DataTable dt = new DataTable();

        adapter.Fill(dt);

        XElement xmlbookstore = new XElement("bookstore");

        for (int i = 0; i < dt.Rows.Count; i++)

        {

            XElement xmlbook = new XElement("book");

            XElement xmltitle = new XElement("title", dt.Rows[i]["title"].ToString());

            XElement xmlauthor = new XElement("author", dt.Rows[i]["author"].ToString());

            XElement xmlyear = new XElement("year", dt.Rows[i]["year"].ToString());

            XElement xmlprice = new XElement("price", dt.Rows[i]["price"].ToString());

            xmlbook.Add(xmltitle);

            xmlbook.Add(xmlauthor);

            xmlbook.Add(xmlyear);

            xmlbook.Add(xmlprice);

            xmlbookstore.Add(xmlbook);

        }

        FileStream stream = File.OpenWrite(Server.MapPath("a.xml"));

        StreamWriter writer = new StreamWriter(stream);

        writer.Write(xmlbookstore.ToString());

        writer.Flush();

        writer.Dispose();

xml文件导入到数据库:

string str = ConfigurationManager.ConnectionStrings["sqlcnn"].ConnectionString;

        Stream reader = File.OpenRead(Server.MapPath("book.xml"));

        XDocument doc = XDocument.Load(reader);

        foreach (XElement element in doc.Root.Descendants("book"))

        {

            SqlConnection con = new SqlConnection(str);

            SqlCommand cmd = con.CreateCommand();

 

            con.Open();

            cmd.CommandText = "insert into book(title,author, gender, age,year,price) values(@title,@author,@gender,@age,@years,@price)";

            cmd.Parameters.AddWithValue("@title", element.Element("title").Value);

            cmd.Parameters.AddWithValue("@author", element.Element("author").Value);

            cmd.Parameters.AddWithValue("@gender", element.Element("author").Attribute("gender").Value);

            cmd.Parameters.AddWithValue("@age", element.Element("author").Attribute("age").Value);

            cmd.Parameters.AddWithValue("@years", element.Element("year").Value);

            cmd.Parameters.AddWithValue("@price", element.Element("price").Value);

            int i=cmd.ExecuteNonQuery();

            if (i > 0)

            {

                ClientScript.RegisterStartupScript(GetType(), "提示", "<script>alert('导入成功!');</script>");

            }

 

        }

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值