Записывает все дочерние узлы указанного узла в параметр ссылки узла. |
Краткое описание
int xmlChildNodes(unsigned doc, unsigned node, dyn_uint &nodes); |
Параметры
Параметр | Значение |
doc | Идентификатор документа, возвращаемый, например, xmlNewDocument(). |
node | Идентификатор узла. |
nodes | Дочерние узлы (возвращаемый параметр). |
Возвращаемое значение
В случае успешной записи 0. В случае возникновения ошибок функция возвращает -1. |
Описание
ПРИМЕР Этот пример создает документ с помощью xmlNewDocument() и добавляет узлы к документу при помощи xmlAppendChild(). Вывод узлов на печать осуществляется с помощью «xmlChildNodes». #uses «CtrlXml» main() { dyn_uint nodes; string nNameP, nName1,nName2, nName3, nName4, nName5; unsigned docNum = xmlNewDocument(); //Создание нового документа xmlAppendChild(docNum, -1, XML_COMMENT_NODE, «my fine new comment»); //Добавление нового узла int node = xmlAppendChild(docNum, -1, XML_ELEMENT_NODE, «Parent node»); //Добавление нового узла nNameP = xmlNodeName(docNum, node); int PNode = xmlParentNode(docNum, node); DebugN(«Parent node:», nNameP); xmlAppendChild(docNum,PNode, XML_ELEMENT_NODE, «First element»); nName1 = xmlNodeName(docNum, node); DebugN(«Node 1:», nName1); int node2 = xmlAppendChild(docNum, -1, XML_ELEMENT_NODE, «Second element»); nName2 = xmlNodeName(docNum, node2); DebugN(«Node 2:», nName2); int j = xmlSetElementAttribute(docNum, node2, «Attribute1», «Example Attribute»); //Определение нового атрибута int node3 = xmlAppendChild(docNum, node2, XML_ELEMENT_NODE, «Third element»); nName3 = xmlNodeName(docNum,node3); DebugN(«Node 3:», nName3); int i = xmlSetNodeValue(docNum, nName2, «And a node value»); //Установка нового значения int node4 = xmlAppendChild(docNum, -1, XML_ELEMENT_NODE, «Fourth element»); nName4 = xmlNodeName(docNum, node4); DebugN(«Node 4:», nName4); int node3 = xmlAppendChild(docNum, -1, XML_ELEMENT_NODE, «Fifth element»); xmlSetElementAttribute(docNum, node3, «Attribute2», «A second example attribute»); int k = xmlChildNodes(docNum, PNode, nodes); DebugN(«xmlChildNodes successful:», k, «List of the nodes:», nodes); //Вывод дочерних узлов на печать } |
Используется для объекта
Доступность
В каждом сценарии, в котором используется расширение «CtrlXml» (#uses «CtrlXml»). |
См. также