我有这部分代码
Response.Charset = _encodingcode;
Response.AddHeader("Content-Encoding", _encodingcode);
Response.HeaderEncoding = Encoding.GetEncoding(_encodingcode);
Response.ContentEncoding = Encoding.GetEncoding(_encodingcode);
Response.ContentType = mimeType;
return File(_filedata, mimeType, $"{id}{_extension}");
但总是在下载文件时,记事本的编码为ANSI
最佳答案
记事本仅接收_filedata字节,该字节将作为第3个参数中指定的名称保存为磁盘文件,但mimeType或响应标头或正文的任何元素均不保存,因此指定编码无效。
通过在字节流的开头添加字节顺序标记(BOM),可以向记事本提示一些编码:
对于UTF-8-0xEF,0xBB,0xBF
对于UTF-16 / 32-0xFF,0xFE
除此之外,无法告诉记事本应使用哪种编码。