页面里有一个按钮,点击,将页面上表格的内容保存到Excel中。关于这个Excel的名字问题,遇到了麻烦。代码如下:
protected void Button1_Click(object sender, EventArgs e)
{
string fileName = questionnaire.QuestionnaireName;
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312"; Response.AppendHeader("Content-Disposition", "attachment;filename=\"" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + ".xls\"");
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType = "application/ms-excel";
EnableViewState = false;
Response.Write(ExportTale(ExcelTableHead, Table));
Response.End();
}问题是:questionnaire.QuestionnaireName是一个很长的中文名字,不能全部保存,被截断了。不知道怎么解决,难道不能用中文吗,还是因为长度的关系。高人指点
protected void Button1_Click(object sender, EventArgs e)
{
string fileName = questionnaire.QuestionnaireName;
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312"; Response.AppendHeader("Content-Disposition", "attachment;filename=\"" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + ".xls\"");
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType = "application/ms-excel";
EnableViewState = false;
Response.Write(ExportTale(ExcelTableHead, Table));
Response.End();
}问题是:questionnaire.QuestionnaireName是一个很长的中文名字,不能全部保存,被截断了。不知道怎么解决,难道不能用中文吗,还是因为长度的关系。高人指点
我一直都导出中文的啊。
首先绑定数据
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF7;
string FileName = "称重查询.xls";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
Response.ContentEncoding = System.Text.Encoding.UTF7;
文件名的话
直接使用中文就行