// 页面头编码 private static void FrontDecorator(HtmlTextWriter writer) { writer.WriteFullBeginTag("HTML"); writer.WriteFullBeginTag("Head"); writer.WriteEndTag("Head"); writer.WriteFullBeginTag("Body"); } // 页面头编码 private static void RearDecorator(HtmlTextWriter writer) { writer.WriteEndTag("Body"); writer.WriteEndTag("HTML"); } public static void ToExcel(System.Web.UI.WebControls.Repeater Repeater1, string StrFileName, string StrTitle) { ToExcel(Repeater1, StrFileName, StrTitle, ""); } // 导出Repeater数据 public static void ToExcel(System.Web.UI.WebControls.Repeater Repeater1, string StrFileName, string StrTitle, string StrHead) { System.IO.StringWriter ObjSw = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter ObjHw = new System.Web.UI.HtmlTextWriter(ObjSw); FrontDecorator(ObjHw); if (StrTitle != "") ObjHw.Write(StrTitle + "<br>"); if (StrHead != "") ObjHw.Write(StrHead + "<br>"); Repeater1.EnableViewState = false; Repeater1.RenderControl(ObjHw); RearDecorator(ObjHw); System.Web.HttpResponse ObjResponse = System.Web.HttpContext.Current.Response; ObjResponse.Clear(); ObjResponse.Buffer = true; ObjResponse.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); ObjResponse.ContentType = "application/vnd.ms-excel"; ObjResponse.AddHeader("Content-Disposition", "attachment; filename=" + StrFileName + ".xls"); ObjResponse.Charset = "gb2312"; Repeater1.Page.Form.InnerHtml = "runat='server'"; ObjResponse.Write(ObjSw.ToString()); //response.End(); HttpContext.Current.ApplicationInstance.CompleteRequest(); }