|
Возможно ли записать сразу XML с кодировкой windows-1251? |
☑ |
0
Ivan Bezdomnyi
18.09.12
✎
14:07
|
Или только сначала в utf-8, а потом через перекодировщик?
P.S. Платформа 8.0 - "Новый ПараметрыЗаписиXMД" нету такого.
А при попытке
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ПутьКФайлу, "windows-1251");
Запись.ЗаписатьОбъявлениеXML();
записывает <?xml version="1.0"?> вместо <?xml version="1.0" encoding="windows-1251"?>
|
|
1
zladenuw
18.09.12
✎
14:08
|
ПараметрыЗаписиXML (XMLWriterSettings)
По описании параметров записи
Синтаксис:
Новый ПараметрыЗаписиXML(<Кодировка>, <Версия>, <Отступ>, <ОтступАтрибутов>, <СимволыОтступа>)
Параметры:
<Кодировка> (необязательный)
Тип: Строка.
Кодировка, которая будет использоваться при записи документа XML (актуальна для записи в файл).
По умолчанию будет использована кодировка UTF-8.
|
|
2
Ivan Bezdomnyi
18.09.12
✎
14:12
|
(1) в 8.0 нету "Новый ПараметрыЗаписиXML"
|
|
3
Infsams654
18.09.12
✎
14:16
|
(2) в 8.1 есть
|
|
4
Ivan Bezdomnyi
18.09.12
✎
14:30
|
Есть хотя бы перекодировщик нормальный? А то этот Книга знаний: Перекодировщик из UTF-8 в Windows-1251 и обратно ошибку выдает.
|
|
5
Вадя
18.09.12
✎
14:45
|
Функция ЗаписатьТесктНаДиск(ТекстДляЗаписи, ФайлДляЗаписи) Экспорт
ФайлДанных = Новый Файл(ФайлДляЗаписи);
Если НЕ ФайлДанных.Существует() Тогда
Ответ = Вопрос("Не найден файл данных """ + ФайлДляЗаписи + """" + Символы.ПС + "Создать?", РежимДиалогаВопрос.ДаНет, 60, КодВозвратаДиалога.Нет);
Если Ответ = КодВозвратаДиалога.Нет Тогда
Возврат Ложь;
КонецЕсли;
КонецЕсли;
Заголовок = "<?xml version=""1.0"" encoding=""windows-1251""?> ";
ТекстДляЗаписиСбербанк=Заголовок+Символы.ПС+ТекстДляЗаписи;
ПотокЗаписи = Новый ЗаписьТекста(ФайлДляЗаписи,КодировкаТекста.ANSI);
ПотокЗаписи.Записать(ТекстДляЗаписиСбербанк);
ПотокЗаписи.Закрыть();
Сообщить("Записаны данные в файл " + ФайлДляЗаписи);
Возврат Истина;
КонецФункции
|
|
6
Ivan Bezdomnyi
19.09.12
✎
13:32
|
(5) Спасибо, добрый человек!
|
|