日期:2014-05-18  浏览次数:21168 次

C#导出Excel,sheet名称为中文时变成乱码 怎么解决
代码如下:

 string filename = "单位统计结果";
Response.AppendHeader("content-disposition", "attachment;filename=\"" + System.Web.HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8) + ".xls\"");

请各位帮帮忙啊

------解决方案--------------------
Response.Clear();
Response.Buffer = true;
Response.Charset = "gb2312";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.AppendHeader("content-disposition","attachment;filename=\"" + System.Web.HttpUtility.UrlEncode("中文",System.Text.Encoding.UTF8) + ".xls\"");
Response.ContentType = "Application/ms-excel";
------解决方案--------------------
我这边假前刚做了个!!
思路是:
新建两个.aspx文件,一个添加个按钮,它的Button1_Click事件中添加如下代码:
Response.Redirect("另一个.aspx");
在那个没有按钮的.aspx页面的cs文件中添加如下代码:
protected void Page_Load(object sender, EventArgs e)
{
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("content-disposition", "attachment;filename=你要的中文名称.xls");
}
当你点击按钮回自动让你保存一个.xls文件!sheet名称你想啥就是啥!
遗留问题,没有搞多个sheet,不知道行步行!