ExtractXMLStructure()
Синтаксис
ExtractXMLStructure(*Node , *Buffer , Structure [, Flags])
Описание
Извлекает элементы из заданного узла XML в указанную память Структуры. Перед извлечением элементов Структура будет очищена.
Параметры
*Node Узел XML, содержащий данные структуры. *Buffer Адрес памяти структуры для заполнения данными. Structure Тип структуры, для заполнения данными. Flags (дополн.) Если этот параметр установлен на #PB_XML_NoCase, тогда сравнение имен узлов XML и атрибутов выполняется без учета регистра. Если флаг не установлен (по умолчанию), то проверка идёт с учётом регистра.
Возвращаемое значение
Ничего.
Комментарии
Перед извлечением элементов узлов XML, содержимое памяти структуры будет очищено. Если у элемента структуры нет соответствующего узла в XML, он остается пустым.
Узлы XML должны иметь форму, описанную в функции InsertXMLStructure(). А именно, каждый узел должен получить имя от элемента структуры, но без символов '*' и '$'. Если узел для одного и того же элемента структуры существует в нескольких экземплярах, будет использоваться первый узел.
Пример
Structure Person Name$ Age.l EndStructure Xml$ = "<Person><Name>John Smith</Name><Age>42</Age></Person>" If ParseXML(0, Xml$) And XMLStatus(0) = #PB_XML_Success Define P.Person ExtractXMLStructure(MainXMLNode(0), @P, Person) Debug P\Name$ Debug P\Age Else Debug XMLError(0) EndIf
См. также
InsertXMLStructure(), ExtractXMLArray(), ExtractXMLList(), ExtractXMLMap()
Поддерживаемые OS
Все