2015-08-24 107 views
0

我写了这个代码用于出口的GridView到Excel:导出到Excel文件名

System.Web.HttpContext.Current.Response.Clear(); 
Response.Buffer = true; 
Response.ClearContent(); 
Response.ClearHeaders(); 
Response.Charset = System.Text.Encoding.UTF8.EncodingName; 
Response.ContentEncoding = System.Text.Encoding.UTF8; 
Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble()); 
string FileName = Title + ".xls"; 
StringWriter strwritter = new StringWriter(); 
HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter); 
Response.Cache.SetCacheability(HttpCacheability.NoCache); 
Response.ContentType = "application/vnd.ms-excel"; 
Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName); 

,但文件名不针对非英语名称(如阿拉伯语)正确显示。我如何将文件保存为非英文名?

enter image description here

感谢

回答

0

裹文件名以

Server.UrlEncode 

例如:

string FileName = Server.UrlEncode(Title + ".xls"); 

和它的作品!!!!