下载文件名带有国际字符的文件

本文关键字:字符 文件 文件名 下载 | 更新日期: 2023-09-27 18:13:06

在我的应用程序中,我上传了一个文件名中有瑞典字符的文件。它工作得很好。但是当我尝试下载它时,我得到一个错误:"在邮件头中发现无效字符"..你能帮我解决这个问题吗请参阅我的代码

public ActionResult Download(Guid id)
{
   var attachment = AttachmentService.GetAttachmentById(id);
   var cd = new ContentDisposition
                {
                  FileName = Utility.GetCleanedFileName(((FileAttachment)attachment).FileName),
                  Inline = false,
                };
   var file = File("''App_Data" +((FileAttachment)attachment).FilePath, "Application");
   Response.ClearHeaders();
   Response.Clear();
   Response.ContentType = file.ContentType;
   Response.AppendHeader("Content-Disposition", cd.ToString());
   var filePath = "''App_Data" + ((FileAttachment) attachment).FilePath;
   Response.WriteFile(filePath);
   Response.End();
   return file;
}

下载文件名带有国际字符的文件

请尝试使用HttpUtility.UrlPathEncode编码文件名。

http://msdn.microsoft.com/en-us/library/system.web.httputility.urlpathencode.aspx