Тип: Строка. Кодировка, указанная в декларации XML документа. Значение псевдоатрибута "encoding" в объявлении XML документа.
Полное описание, параметры и ограничения
ДокументDOM.КодировкаXML (DOMDocument.XMLEncoding)
ДокументDOM (DOMDocument)
КодировкаXML (XMLEncoding)
Доступен, начиная с версии 8.1.
Использование:
Только чтение.
Описание:
Тип: Строка.
Кодировка, указанная в декларации XML документа. Значение псевдоатрибута "encoding" в объявлении XML документа.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Пустая строка, если кодировка неизвестна (например, документ формируется в памяти).
Поддерживаемые коды кодировок (с учетом правил http://www.w3.org/TR/2004/REC-xml-20040204/#NT-EncName):
UTF-8
UTF-16
UTF-16BE
UTF-16LE
ISO-8859-1
US-ASCII
gb18030
iso-8859-2
iso-8859-3
iso-8859-4
iso-8859-5
iso-8859-6
iso-8859-7
iso-8859-8
iso-8859-9
iso-8859-13
iso-8859-15
Shift_JIS
EUC-JP
Big5
Big5-HKSCS
GBK
GB2312
GB_2312-80
EUC-KR
KSC_5601
windows-949
windows-874
cp866
KOI8-R
KOI8-U
windows-1250
windows-1251
windows-1252
windows-1253
windows-1254
windows-1255
windows-1256
windows-1257
windows-1258
macintosh
x-mac-cyrillic
ISO-2022-JP
ISO-2022-KR
ISO-2022-CN
ISO-2022-CN-EXT
HZ-GB-2312
Использование в версии:
Доступен, начиная с версии 8.1.
Методическая информация
Практические примеры
Задать свойства XML-документа, не выдавая их за преобразование кодировки
Документ в памяти имеет версию и признак автономности, но не имеет исходной байтовой кодировки. ЗаписьDOM создаёт строку, а не файл UTF-8.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Документ создаётся в памяти без DTD, схемы, HTTP и файлов.
URI urn:guide:memory-document — условный идентификатор; он не загружается из интернета.
Документ = Новый ДокументDOM("", "guide");
Документ.ВерсияXML = "1.0";
Документ.Автономный = Истина;
Документ.URIДокумента = "urn:guide:memory-document";
Документ.ЭлементДокумента.ТекстовоеСодержимое = "Книга";
Сообщить(Документ.ВерсияXML = "1.0");
Сообщить(Документ.Автономный);
Сообщить(Документ.URIДокумента = "urn:guide:memory-document");
Сообщить(Документ.КодировкаИсточника = "");
Сообщить(Документ.КодировкаXML = "");
Сообщить(Документ.ОпределениеТипаДокумента = Неопределено);
Запись = Новый ЗаписьXML;
Запись.УстановитьСтроку();
Попытка
ЗаписьДерева = Новый ЗаписьDOM;
ЗаписьДерева.Записать(Документ, Запись);
XML = Запись.Закрыть();
Исключение
Запись.Закрыть();
ВызватьИсключение;
КонецПопытки;
Сообщить(XML);
Сообщить(СтрНайти(XML, "Книга") > 0);Разбор по шагам
ВерсияXML 1.0 определяет правила XML. Автономный — декларация независимости от внешних определений, а не запрет сети во всём приложении.
URIДокумента задаёт идентификатор документа, не сохраняет файл и не запускает запрос.
КодировкаИсточника и КодировкаXML доступны только для чтения. У созданного в памяти документа они пустые: источника байтов не было.
Через ЗаписьDOM и ЗаписьXML сериализуем дерево в строку. Кодирование этой строки в байты или файл — отдельный шаг.
Как проверить результат
Версия 1.0, Автономный=Истина и заданный URI читаются обратно; оба свойства кодировки пустые.
ОпределениеТипаДокумента отсутствует, XML содержит Книга.
Нет создания файла по URI и загрузки внешних определений.
Ожидаемый результат
Свойства декларации, идентификатор и происхождение кодировки отделены от сериализации строки.
На что обратить внимание
Установка URI не доказывает наличие ресурса по этому адресу.
Нельзя назначить КодировкаXML напрямую: выбирайте нужную кодировку при записи в файл или преобразовании в двоичные данные.
Автономный=Истина не является средством защиты от загрузки внешних XML-ресурсов в другом коде.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.