大家可按以下方法把Web DataGrid数据直接导出Excel在IE中打开。 (收集,还没有测试下)
private void WebExcel()
{
string strSheetName = "出勤情况明细报表 ";
Response.Clear();
Response.Buffer= true;
Response.Charset= "GB2312 ";
Response.AddHeader( "Content-Disposition ", "attachment; filename= " + System.Web.HttpUtility.UrlEncode(strSheetName,System.Text.Encoding.UTF8) + ".xls ");
//Response.ContentEncoding=System.Text.Encoding.GetEncoding( "GB2312 ");//设置输出流为简体中文
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.ContentType = "application/ms-excel ";//设置输出文件类型为excel文件。
this.EnableViewState = false;
Response.Write( "打印时间: " + DateTime.Now.ToString( "yyyy-MM-dd HH:mm:ss "));
//输出正文
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.RenderControl(oHtmlTextWriter);
Response.Write(oStringWriter.ToString());
Response.End();
}