发送文件时的 ASP.NET 文件名编码

标签 asp.net encoding

我正在将文件从 ASP.NET Page 发送到浏览器。为了正确发送文件名,我添加了一个标题:

Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);

问题是当文件包含空格(例如“abc def”)时,浏览器只收到文件名的“abc”部分。我试过: Server.HtmlEncode 但它没有帮助。

你知道如何解决这个问题吗?

PK

最佳答案

将文件名放在引号中:-

Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=\"" + filename + "\"");

关于发送文件时的 ASP.NET 文件名编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1588325/

相关文章:

javascript - 从 Javascript 分配 Session 变量

c# - 将位图编码为 Jpeg

使用 utf-8 编码的 php 邮件在 Microsoft 邮件客户端中显示不正确

asp.net - 在 web.config 中使用自定义错误设置时出现 IIS7 'one liner' 错误

asp.net - 当 debug 设置为 false 时,ModalPopupExtender 控件变得可见

asp.net - 使用 MySQL、ASP.NET 和 Entityframework 实现原子计数器

python - 哪种编码?由波浪号 ~ 和花括号 {} 括起来的字符串

c# - 不可访问的内部资源文件?

python - 将 URL 编码为 google 可读的格式

php - mysql php编码