在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
复制代码 代码如下: protected void Excel_Click(object sender, EventArgs e) { Response.Charset = "UTF-8"; Response.ClearContent(); Response.Clear(); Response.ContentEncoding = System.Text.Encoding.UTF8; Response.HeaderEncoding = System.Text.Encoding.UTF8; Response.AddHeader("content-disposition", "attachment; filename=MyExpress.xls"); Response.ContentType = "application/excel"; System.IO.StringWriter sw = new System.IO.StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); // turn off paging GridView1.AllowPaging = false; dataBind(); GridView1.RenderControl(htw); Response.Write(sw.ToString()); Response.End(); // turn the paging on again GridView1.AllowPaging = true; dataBind(); } 关键: 复制代码 代码如下: Response.Charset = "UTF-8";//添加编码格式 Response.ClearContent(); Response.Clear(); Response.ContentEncoding = System.Text.Encoding.UTF8;//表格内容添加编码格式 Response.HeaderEncoding = System.Text.Encoding.UTF8;//表头添加编码格式 上边如果解决不了还可以用 复制代码 代码如下: Response.ClearContent(); Response.Clear(); Response.AddHeader("content-disposition", "attachment; filename=sumlate.xls"); Response.Charset = "GB2312"; Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); Response.ContentType = "application/excel"; System.IO.StringWriter sw = new System.IO.StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); if (GridView2.Rows.Count > 0) { GridView2.RenderControl(htw); } else { GridView1.RenderControl(htw); } Response.Write(sw.ToString()); Response.End(); 关键: 复制代码 代码如下: Response.Charset = "GB2312"; Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); 注意观察,主要原因其实就是编码格式问题。 现在就能防止导出时候乱码问题了 |
请发表评论