ЧтениеXml
Стд::Xml::ЧтениеXml Базовые типы: Объект |
Иерархия типа
graph BT;
ЧтениеXml-->Объект;
Объект для последовательного чтения XML-данных. Чтение XML-данных выполняется потоково, в конкретный момент времени объект позиционируется на конкретном узле XML. При ошибке разбора XML-данных вызывается исключение ИсключениеЧтенияXml. Типы данных разбираются в соответствии со стандартом XML.
Сравнение ссылочное
Конструкторы
ЧтениеXml
ЧтениеXml(
Источник: Строка,
Настройки: НастройкиЧтенияXml)
Перегрузка: ЧтениеXml(Источник: ПотокЧтения, Настройки: НастройкиЧтенияXml, Кодировка: Кодировка|Строка = Кодировка.Utf8) |
Конструктор чтения XML из строки Источник
с настройками Настройки
.
ЧтениеXml
ЧтениеXml(
Источник: ПотокЧтения,
Настройки: НастройкиЧтенияXml,
Кодировка: Кодировка|Строка = Кодировка.Utf8)
Перегрузка: ЧтениеXml(Источник: Строка, Настройки: НастройкиЧтенияXml) |
Свойства
Автономный
ТолькоЧтение Автономный: Булево |
Значение атрибута standalone
элемента объявления XML. Если атрибут не указан или объявление не прочитано (отсутствует), то Ложь
.
ВерсияXml
ТолькоЧтение ВерсияXml: Строка? |
Версия спецификации XML, которой соответствует документ XML (получается из объявления XML).
ВидУзла
ТолькоЧтение ВидУзла: ВидУзлаXml? |
Вид текущего узла или Неопределено
, если чтение еще не начато или уже завершено.
Значение
ТолькоЧтение Значение: Строка |
Текстовое значение текущего узла XML. Если для узла текстовое значение не определено, то содержит пустую строку. Узлы, для которых определено текстовое значение:
СекцияCDATA
- содержимое секции CDATA,Комментарий
- содержимое комментария,ОпределениеТипаДокумента
- внутреннее подмножество (internal subset),ИнструкцияОбработки
- содержимое инструкции обработки, исключая адрес (target),Текст
- содержимое текстового узла,СсылкаНаСущность
- текст сущности.
Учитывается значение параметра ИгнорироватьПробелыВЗначениях. После окончания текста XML возвращает пустую строку.
ИмеетЗначение
ТолькоЧтение ИмеетЗначение: Булево |
Признак что текущий узел содержит текстовое значения. После окончания текста XML возвращает Ложь
ИмеетИмя
ТолькоЧтение ИмеетИмя: Булево |
Признак наличия у текущего узла имени. После окончания текста XML возвращает Ложь
Имя
ТолькоЧтение Имя: Строка |
Имя текущего узла XML. Содержит квалифицированное имя для текущего узла. Имя зависит от типа текущего узла:
ОпределениеТипаДокумента
- имя типа документа,НачалоЭлемента
- имя элемента,КонецЭлемента
- имя элемента,СсылкаНаСущность
- имя ссылки на сущность,ИнструкцияОбработки
- адрес инструкции обработки (target).
Для узлов, у которых имя не определено, свойство содержит пустую строку. После окончания текста XML возвращает пустую строку.
ЛокальноеИмя
ТолькоЧтение ЛокальноеИмя: Строка |
Локальное имя текущего узла XML. Содержит неквалифицированное имя для текущего узла. После окончания текста XML возвращает пустую строку.
Префикс
ТолькоЧтение Префикс: Строка |
Префикс текущего узла. Имеет смысл для узлов типов НачалоЭлемента
, КонецЭлемента
. Для узлов остальных типов или после окончания текста XML возвращает пустую строку.
ПространствоИмен
ТолькоЧтение ПространствоИмен: Строка |
URI пространства имен текущего узла. После окончания текста XML возвращает пустую строку.
Методы
ЗначениеАтрибута
Возвращает строку, представляющую значение атрибута с именем Имя
и пространством имен ПространствоИмен
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ЗначениеАтрибутаКакБайты
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
как шестнадцатеричное число и преобразует к значению типа Байты.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Байты
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакБайтыBase64
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
как число в записи Base64 и преобразует к значению типа Байты.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Байты
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакБулево
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Булево.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Булево
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакВремя
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Время.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Время
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакДата
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Дата.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Дата
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакДатаВремя
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа ДатаВремя.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу ДатаВремя
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакДлительность
ЗначениеАтрибутаКакДлительность(
Имя: Строка,
ПространствоИмен: Строка? = Неопределено
): Длительность
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Длительность.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу Длительность
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакМомент
ЗначениеАтрибутаКакМомент(
Имя: Строка,
ЧасовойПояс: ЧасовойПояс
): Момент
Перегрузка: ЗначениеАтрибутаКакМомент(Имя: Строка, ПространствоИмен: Строка? = Неопределено, ЧасовойПояс: ЧасовойПояс): Момент |
Читает значение атрибута с именем Имя
преобразует к значению типа Момент часовом поясе ЧасовойПояс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу Момент
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакМомент
ЗначениеАтрибутаКакМомент(
Имя: Строка,
ПространствоИмен: Строка? = Неопределено,
ЧасовойПояс: ЧасовойПояс
): Момент
Перегрузка: ЗначениеАтрибутаКакМомент(Имя: Строка, ЧасовойПояс: ЧасовойПояс): Момент |
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Момент. Если у значения атрибута не указан часовой пояс, для преобразования будет использован часовой пояс, указанный в аргументе ЧасовойПояс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу Момент
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакУуид
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Ууид.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу Ууид
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаКакЧисло
Читает значение атрибута с именем Имя
и пространством имен ПространствоИмен
и преобразует к значению типа Число.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИсключениеЧтенияXml - значение не может быть преобразовано к типу Число
ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя
в пространстве имен ПространствоИмен
ЗначениеАтрибутаПоИндексу
Возвращает строку, представляющую значение атрибута с указанным индексом Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ИмяАтрибута
Возвращает полное имя атрибута по индексу Индекс
. Совпадает с локальным, если не задан префикс атрибута. Иначе - полное имя имеет вид: префикс_атрибута:локальное_имя_атрибута.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
КоличествоАтрибутов
КоличествоАтрибутов(): Число
Возвращает количество атрибутов у последнего прочитанного узла XML.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
КоличествоОбъявленийПространствИмен
КоличествоОбъявленийПространствИмен(): Число
Возвращает количество объявлений пространств имен у последнего прочитанного узла XML.
Исключения
ИсключениеЧтенияXml - если тип текущего узла не НачалоЭлемента
Примеры
<!-- http://xmlns - пространство имен по умолчанию,
http://ns - пространство имен "ns" -->
<tag xmlns="http://xmlns"
xmlns:ns="http://ns"
ns:attr="value"/>
метод ПолучитьКоличествоОбъявленийПространствИмен(СтрокаXml:Строка): Число
знч Чтение = новый ЧтениеXml(СтрокаXml)
Чтение.Следующий()
возврат Чтение.КоличествоОбъявленийПространствИмен() // 2
;
ЛокальноеИмяАтрибута
Возвращает локальное имя атрибута по индексу Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ОбъявлениеПространстваИмен
Возвращает URI объявления пространства имен с указанным индексом Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ПрефиксАтрибута
Возвращает префикс атрибута с указанным индексом Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ПрефиксОбъявленияПространстваИмен
Возвращает префикс объявления пространства имен с указанным индексом Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
Пропустить
Пропустить(): Булево
Пропускает дочерние узлы текущего узла и позиционируется в начало следующего узла. Если текущий узел не содержит подчиненных узлов или если его тип не НачалоЭлемента, то вызов метода аналогичен Следующий, в противном случае осуществляется пропуск всех дочерних узлов и осуществляется позиционирование на следующем узле. Возвращает Ложь
, если текст XML завершился.
Исключения
ИсключениеЧтенияXml - если произошла ошибка при чтении XML
ПространствоИменАтрибута
Возвращает пространство имен атрибута по индексу Индекс
.
Исключения
ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML
ПрочитатьСодержимоеКакБайты
ПрочитатьСодержимоеКакБайты(): Байты
Читает содержимое узла как шестнадцатеричное число и преобразует к значению типа Байты. При преобразовании не учитываются пробельные символы. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Байты
ПрочитатьСодержимоеКакБайтыBase64
ПрочитатьСодержимоеКакБайтыBase64(): Байты
Читает содержимое узла как число в записи Base64 и преобразует к значению типа Байты. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Байты
ПрочитатьСодержимоеКакБулево
ПрочитатьСодержимоеКакБулево(): Булево
Читает содержимое узла и преобразует к логическому значению:
- значения
true
и1
преобразуются вИстина
, - значения
false
и0
преобразуются вЛожь
. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к логическому типу
ПрочитатьСодержимоеКакВремя
ПрочитатьСодержимоеКакВремя(): Время
Читает содержимое узла и преобразует к значению типа Время. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Время
ПрочитатьСодержимоеКакДатаВремя
ПрочитатьСодержимоеКакДатаВремя(): ДатаВремя
Читает содержимое узла и преобразует к значению типа ДатаВремя. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу ДатаВремя
ПрочитатьСодержимоеКакДату
ПрочитатьСодержимоеКакДату(): Дата
Читает содержимое узла и преобразует к значению типа Дата. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Дата
ПрочитатьСодержимоеКакДлительность
ПрочитатьСодержимоеКакДлительность(): Длительность
Читает содержимое узла и преобразует к значению типа Длительность. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Длительность
ПрочитатьСодержимоеКакМомент
ПрочитатьСодержимоеКакМомент(ЧасовойПояс: ЧасовойПояс): Момент
Читает содержимое узла и преобразует к значению типа Момент. Если у содержимого узла не указан часовой пояс, для преобразования будет использован часовой пояс, указанный в аргументе ЧасовойПояс. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Момент
ПрочитатьСодержимоеКакСтроку
ПрочитатьСодержимоеКакСтроку(): Строка
ПрочитатьСодержимоеКакУуид
ПрочитатьСодержимоеКакУуид(): Ууид
Читает содержимое узла и преобразует к значению типа Ууид.
Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Ууид
ПрочитатьСодержимоеКакЧисло
ПрочитатьСодержимоеКакЧисло(): Число
Читает содержимое узла и преобразует к числовому значению.
Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.
Исключения
ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к числовому типу
Следующий
Следующий(): Булево
Считывает очередной узел XML. Возвращает признак, что был прочитан очередной узел (Ложь
- текст XML завершился). При этом следующим свойствам присваиваются значения, соответствующие прочитанным данным:
Исключения
ИсключениеЧтенияXml - при ошибке чтения XML.
СледующийДо
Читает узлы до тех пор, пока не встретит узел с именем Имя
в пространстве имен ПространствоИмен
. Возвращает Истина
, если текущий узел является искомым, иначе Ложь
(текст XML завершился).
ЭтоПустойЭлемент
ЭтоПустойЭлемент(): Булево
Возвращает признак того, что текущий узел имеет тип НачалоЭлемента и представлен в XML узлом вида <tag/>
.