public void ExportExcel(DataTable dtData, string filename)
{
System.Web.UI.WebControls.DataGrid dgExport = null;
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
System.IO.StringWriter strWriter = null;
System.Web.UI.HtmlTextWriter htmlWriter = null;
if (dtData != null)
{
curContext.Response.Clear();
curContext.Response.Buffer = true;
DateTime now = new DateTime();
curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + this.Server.UrlEncode(filename + "_" + DateTime.Now.ToString("yyyyMMdd") + ".xls"));
curContext.Response.ContentType = "application/vnd.ms-excel";
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);
dgExport = new System.Web.UI.WebControls.DataGrid();
dgExport.DataSource = dtData.DefaultView;
dgExport.AllowPaging = false;
dgExport.DataBind();
dgExport.RenderControl(htmlWriter);
curContext.Response.Output.Write(strWriter.ToString());
curContext.Response.Flush();
curContext.Response.End();
}
}
将datagridview中的数据作为数据源传出函数即可 filename是你导出的文件名
追问谢谢你帮我回答,但是我还是没有太明白。
我写的不是发到网上用的,而是一个课程设计,不知道“导出”按钮里的代码是什么?可以写一下具体步骤吗?
追答我只是拷的一部分我之前的代码 导出EXcel大致的代码都相似
if (Request["action"] != null && Request["action"] == "export" && Common.IsInteger(Request["id"]))
{
DataTable dt = Common.ReadTable("select id as ID,Username as 申请人,sex as 性别 ,age as 年龄,telphone as 电话,email as 邮箱,resume as 简历,notes as 说明,addtime as 申请时间 from ED_MS_Offer where Employid=" + Request["id"].ToString());
string filename = Common.RecordSet("select job from ED_MS_Employ where id=" + Request["id"].ToString())[0];
ExportExcel(dt, filename);
}
这是我代码里调用导出方法前的相关代码
本回答被提问者采纳