111,128
社区成员
发帖
与我相关
我的任务
分享
<div id="divp" runat="server" >
里面放显示数据的Table
</div>
页面后台导出Excel:
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312";
Response.AppendHeader("Content-Disposition", "attachment;filename=CallCountReport(" + System.DateTime.Now.Year + System.DateTime.Now.Month + System.DateTime.Now.Day + ").xls");
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);
System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
divp.Visible = true;
this.divp.RenderControl(oHtmlTextWriter);
Response.Write(oStringWriter.ToString());
divp.Visible = false;
Response.End();
方法二:
在页面的前台用GridView显示具体的数据和图片。
页面后台导出Excel:
Response.ContentEncoding = System.Text.Encoding.Default;
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.Default).ToString());
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
方法三:
在页面的前台用Datagrid显示具体的数据和图片。
页面后台导出Excel:
Response.Clear();
Response.Buffer = true;
Response.Charset = charSet;
Response.AppendHeader("Content-Disposition", "attachment;filename=Report.xls");
if (charSet.ToLower() == "utf8")
{
Response.ContentEncoding = System.Text.Encoding.UTF8;
}
else
{
Response.ContentEncoding = System.Text.Encoding.GetEncoding(charSet);
}
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);
System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
Datagrid1.Visible = true;
this.Datagrid1.RenderControl(oHtmlTextWriter);
Response.Write("<meta http-equiv=\"content-type\" content=\"application/ms-excel; charset=gb2312\"/>");
Response.Write(oStringWriter.ToString());
Datagrid1.Visible = false;
Response.End();