Web导出excel的问题
有时候需要web业上导出数据文件,我们可以用html的形式导出,就是构造一个table,然后让类似与下面的一段代码处理
private void SaveAsExcel(string html)
{
System.IO.StringWriter writer = new System.IO.StringWriter();
writer.Write(html);
System.Web.UI.HtmlTextWriter txtwriter = new HtmlTextWriter(writer);
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType = "application/vnd.ms-excel";
Response.Write(writer);
Response.End();
}
红线的部分很重要的哦。在开始的时候我并不知道有什么作用,导出数据一直没有问题,后来导出了个数据量很小的excel文件,竟然全是乱码,很是不解,因为数据量大的时候是完全正常的(开始的时候我没有设置Response.ContentEncoding参数,用的是默认值,默认为utf-8),后来经过一番google,发现原来问题就在这个地方。写出来供以后查阅,也给遇到同样问题的参考。O(∩_∩)o…