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