导出Excel文件时的保存文件名问题

皖西木子 2007-06-25 10:08:22
我在做一个导出打印功能时需要利用一个Table的表,把该表的内容导出到一个Excel文件里去,之前看了许多关于这方面的文章,觉得应该还是可以的,可是实际一做,并不是那么一会事,我试验了各种方法,发现使用如下方法:
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;FileName="+YourFileName);
Response.BinaryWrite((byte[])YourFileData.Rows[0]["AttachmentContent"]);
Response.End();
对于YourFileName事有限制的,首先对于英文是没有问题的,主要看看对于中文:
对于中文,是有字数限制的,超过一定的字数,变会显示不认识该文件,文件不能打开。
如果不超过一定的字数,则显示乱码,但能打开文件。
觉得很奇怪,而且对于使用HttpUtility.UrlEncode方法对文件名重新编码后还是一样,似乎没有什么改变的。
请教各位,对于这样的问题该如何解决?
...全文
415 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
AmarkFox 2007-07-06
  • 打赏
  • 举报
回复
response.Clear();
response.Buffer= true;
response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
response.ContentType = "text/csv";
response.AppendHeader("Content-Disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode(FileName));

这样写,文件名和文件内容都能较好的支持中文

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧