@mirexdoors

Как правильно кодировать URl для сохранения файла в window-1251?

Здравствуйте!

Пытаюсь разобраться с кодировкой сохраняемого файла. В целом, задача такая: сохранять с клиента xml-файл в windows-1251 кодировке.

Саму кодировку xml-документа я указываю в xml-аттрибуте encoding="windows-1251". Но вот проблема в том, то файл всё равно сохранён в utf-8.

Файл сохраняю методом создания ссылки с filename

const link = document.createElement('a');
link.href = `data:text/plain;content-disposition=attachment;filename=${fileName},${data}`;


Согласно вот этому https://lists.w3.org/Archives/Public/uri/2010Feb/0... - пробую задать charset в строке:
link.href = `data:text/plain;charset=window-1251;headers=Content-Disposition%3A%20attachment%3B%20filename%3D${fileName},${data}`;

Результат тот же. Как быть?
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
Сам по себе браузер не предоставляет средств для кодирования в какую-либо кодировку кроме utf-8 (хотя под капотом всё это, само собой, есть и в определённый момент такой функционал мог бы появиться, но был выпилен из стандарта, чтоб этим нацистам икалось).
Тебе надо найти любую функцию "utf-8 to win1251" и кодировать текст вручную перед тем как класть в строку.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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