当前位置:  开发笔记 > 编程语言 > 正文

在asp.net中为动态PDF指定文件名

如何解决《在asp.net中为动态PDF指定文件名》经验,为你挑选了3个好方法。

将数据转储到响应流时如何指定文件名?

现在我正在做以下事情:

byte[] data= GetFoo();
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";            
Response.BinaryWrite(data);
Response.End();

使用上面的代码,我得到"foo.aspx.pdf"作为要保存的文件名.我似乎记得能够在响应中添加标头以指定要保存的文件名.



1> Ryan Farley..:

向标题添加内容处置:

Response.AddHeader("content-disposition", @"attachment;filename=""MyFile.pdf""");


双引号应放在文件名周围.见http://kb.mozillazine.org/Filenames_with_spaces_are_truncated_upon_download

2> 小智..:

仅供参考...如果您使用"内联"而不是"附件",该文件将在IE中自动打开.而不是提示用户打开/保存对话框.

Response.AppendHeader("content-disposition", string.Format("inline;FileName=\"{0}\"", fileName));



3> Sklivvz..:
Response.AppendHeader("Content-Disposition", "attachment; filename=foo.pdf");


如果有人想知道为什么同时存在'AddHeader`和`AppendHeader`,[不再感到奇怪...](http://msdn.microsoft.com/en-us/library/system.web.httpresponse.addheader.aspx )
推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有