Как я кодирую имя файла для загрузки?

Ну, для меня я встретился с той же проблемой, как Вы делаете в начале, когда я начал делать OCAML, но прием - то, что необходимо начать думать приблизительно , что Вы хотите от кода и не , как сделать это !!!

, Например, для вычисления квадрата элементов списка, забывают о длине списка, и такие приемы, всего думают математически как этот:

  • , если список пуст->, я сделан

  • в противном случае тогда, список должен иметь голову и хвост-> Вы вычисляете квадрат головы, затем просите, чтобы Ваша функция сделала то же с хвостом.

Просто думают об общем случае и основном, и что Вы испускаете данные и не изменяете их (если Вы не хотите изменить их;)).

Удачи!

18
задан Hakan Fıstık 27 January 2017 в 12:11
поделиться

4 ответа

Я кодирую такое имя файла для загрузки,

HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename= " + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
27
ответ дан 30 November 2019 в 07:39
поделиться

На основе ответа ZZ Coder, и поскольку я использую FileResult, я решил закодировать имя файла как:

HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)
5
ответ дан 30 November 2019 в 07:39
поделиться

Эта проблема известна уже много лет. Насколько я могу судить, в настоящее время нет совместимого способа сделать это, поэтому ответ - поддерживать только один набор браузеров или выполнять сниффинг User Agent.

Тестовые примеры и ссылки на: http: //greenbytes.de/tech/tc2231/[1215 impression

1
ответ дан 30 November 2019 в 07:39
поделиться

Я недавно немного боролся с этим, потому что для имен файлов использовалось много потенциальных языков (китайский хорошо подходит для тестирования). Вот что-то близкое к тому, что я получил (за исключением других деталей реализации):

HttpUtility.UrlEncode("é", System.Text.Encoding.GetEncoding("ISO-8859-1"))
0
ответ дан 30 November 2019 в 07:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: