我们有一个.Net Web应用程序,用户可以在其中下载文件。文件可以具有的文件名可以包含丹麦字符æ,ø和å,还可以包含某些外来语言的其他字符。

我们使用HttpResponseMessage类发送将ContentDispositionHeaderValue初始化为“附件”的文件。

但是分配

FileName

属性不适用于IE中的丹麦字符,但是如果我将文件名分配给
FileNameStar

文件名会自动编码为正确的格式。

所以这有效:
Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
    FileNameStar = "filename with æ ø and å"
};

但是,我找不到任何有关为何对其进行自动编码以及哪些浏览器支持此功能的文档。

搜索互联网,提出建议,在将字符串分配给FileNamestar属性之前,我应该对该字符串进行url编码。但这不是必需的,因为我可以在http跟踪中看到它已正确编码。

所有主流浏览器都支持吗?我可以确定文件名编码正确吗?

谢谢
圣战

最佳答案

取自here:

09-25 15:50