导出一个XML文件并提供下载的代码,下载的代码可通用

本文介绍了一个使用 C# 实现的功能,该功能能够将数据导出为 XML 文件,并进一步将 XML 文件转换为 Excel 文件供用户下载。文中包含了具体的代码实现细节,包括如何处理文件路径、写入 XML 数据及生成 Excel 文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System.IO;
  private void Button2_Click(object sender, System.EventArgs e)
  {
   GetData();
   initDataGrid();
   string phyPath=Server.MapPath("./");
//   phyPath=phyPath.Substring(1);
//   Response.Write("<script language=javascript>alert('"+phyPath+"');</script>");
//   return;
   if (this.ds.Tables[0].Rows.Count<=0)
   {
    Response.Write("<script language=javascript>alert('无记录!');</script>");
    return ;
   }
   this.ds.WriteXml(phyPath+"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.xml",XmlWriteMode.WriteSchema);
   Response.Write("<script language=javascript>alert('export success');</script>");
   GetExcel(phyPath+"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.xml",this.Page);
  }
  public static void GetExcel(string filename,Page p1)
  {
   string t_name=filename.Substring(filename.LastIndexOf(@"/")+1);
   p1.Response.Clear();
   p1.Response.Buffer= true;
   p1.Response.Charset="gb2312";
   p1.Response.AppendHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(t_name));
   p1.Response.ContentEncoding=System.Text.Encoding.GetEncoding("gb2312");
   p1.Response.ContentType = "application/ms-excel";
   p1.EnableViewState = false;

   FileInfo fn=new FileInfo(filename);

   FileStream fs=fn.OpenRead();

   byte[] buffer=new byte[fn.Length];
   fs.Read(buffer,0,buffer.Length);
   fs.Close();
   
   p1.Response.BinaryWrite(buffer);
   p1.Response.End();

  
  }

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值