Проблема с кодировкой экспорта CSV-файла - PullRequest
0 голосов
/ 19 марта 2019

Я использую Asp.net mvc для создания файла CSV, но у меня проблемы со специальными символами на португальском языке. Я использую следующий код для возврата файла:

public FileContentResult RelMatriculas(RelRematriculaVM model)
{
    string fileContent = GenerateTheFile();
    Response.Charset = "utf-8";
    Response.ContentEncoding = Encoding.UTF8;
    return File(new UTF8Encoding().GetBytes(fileContent), "text/csv", "RelMatriculas.csv");
}

Я устанавливаю utf8 в качестве кодировки, но когда я сохраняю файл и пытаюсь открыть его в Excel, я вижу ненужные символы вместо специальных.

Если я просто открою файл в блокноте и сохраню его, а затем снова открою его в Excel, это покажет символы правильно. Я что-то упустил для вывода файла в формате UTF8?

1 Ответ

3 голосов
/ 19 марта 2019

Проблема в том, что Excel ожидает спецификацию.От этого ТА ответа :

var data = Encoding.UTF8.GetBytes(fileContent);
var result = Encoding.UTF8.GetPreamble().Concat(data).ToArray();
return File(result, "text/csv", "RelMatriculas.csv");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...