我对进入 Web api 控制器的 get 方法有疑问。此方法返回一个 HttpResponseMessage 对象,该对象具有一个 HttpContent 和一个 csv 文件,其中包含欧元符号。当该方法返回文件时,不会打印欧元符号。该方法的代码如下:
string export = ... //string with fields separed by ';' and with euro symbol
HttpResponseMessage response = new HttpResponseMessage();
UTF8Encoding encoding = new UTF8Encoding();
Byte[] buffer = encoding.GetBytes(export);
response.Content = new ByteArrayContent(buffer);
response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/csv");
response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = "Export.csv" };
response.Content.Headers.ContentLength = export.Length;
response.Content.Headers.Expires = new DateTimeOffset(DateTime.Now.AddDays(1));
return response;
当我打开文件时,欧元符号显示不正确。你能给我一个答案吗?
非常感谢。