ASP.NET响应 - UTF-16编码的文件,但浏览器中未显示任何内容

时间:2017-06-19 18:30:04

标签: c# asp.net encoding utf-8 utf-16

我正在尝试从ASP.NET应用程序发送UTF-16BE文本文件作为HTTP响应。

Response.ContentType = "text/plain";
Response.ContentEncoding = System.Text.UnicodeEncoding.BigEndianUnicode;
Response.WriteFile(filename);

但没有显示结果,Fiddler没有显示任何编码

enter image description here

是我还是网页浏览器不喜欢utf-16文本?

1 个答案:

答案 0 :(得分:2)

不,您的网络浏览器不是问题。

此代码:

context.Response.ContentType = "text/html";
context.Response.ContentEncoding = UnicodeEncoding.BigEndianUnicode;
context.Response.Write("Hello World");

产生预期的内容编码:

  

encoding

但是只要您使用context.Response.WriteFile,内容编码就会被删除。不确定这是否是一个功能。我假设另一端的软件必须根据返回的输出确定内容编码。