关于导出excel在谷歌浏览器中网络错误的问题

whilewk 2017-12-01 01:49:37
具体代码如下

System.Web.UI.WebControls.GridView DGOutPut = new System.Web.UI.WebControls.GridView();
DGOutPut.Visible = true;
DGOutPut.RowDataBound += new GridViewRowEventHandler(DGOutPut_RowDataBound);
DGOutPut.DataSource = dt;
DGOutPut.DataBind();
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
//System.Web.HttpContext.Current.Response.Charset = "GB2312";
//System.Web.HttpContext.Current.Response.Charset = "UTF-8";

System.Web.HttpContext.Current.Response.Charset = "GB2312";
System.Web.HttpContext.Current.Response.ContentEncoding = Encoding.Default;
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName + ".xls", System.Text.Encoding.UTF8));
//System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文
//System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
System.Web.HttpContext.Current.Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
DGOutPut.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);
DGOutPut.RenderControl(oHtmlTextWriter);
System.Web.HttpContext.Current.Response.Write(@"<style> .text {mso-number-format:\@; } </style> ");
System.Web.HttpContext.Current.Response.Write(oStringWriter.ToString());
System.Web.HttpContext.Current.Response.Flush();
System.Web.HttpContext.Current.Response.Close();
//System.Web.HttpContext.Current.Response.End();
//HttpContext.Current.ApplicationInstance.CompleteRequest();
DGOutPut.DataSource = null;
DGOutPut.Visible = false;
...全文
1891 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
我想你是海lq 2020-04-21
  • 打赏
  • 举报
回复
String contentLength = String.valueOf(new File(filePath + filename).length()); response.addHeader("Content-Length", contentLength);
qq_52539530 2018-12-19
  • 打赏
  • 举报
回复
jay_zh1的解决方式有效, 楼主给他分了吗
jay_zh1 2018-04-18
  • 打赏
  • 举报
回复
加 response.AddHeader("Content-Length", bytes.Length.ToString());我解决了
whilewk 2017-12-01
  • 打赏
  • 举报
回复

谷歌浏览器导出之后就会报这个错误,其他浏览器没事

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧