Описание класса QDomNode
|
Константа | Значение | Описание |
---|---|---|
QDomNode::EncodingFromDocument | 1 | Кодировка определяется из документа. |
QDomNode::EncodingFromTextStream | 2 | Кодировку определяется из QTextStream. |
Смотрите также перегруженную функцию save(), которая учитывает EncodingPolicy.
Данное перечисление было введено в Qt 4.3.
Перечисление определяет типы узлов:
Константа | Значение | Описание |
---|---|---|
QDomNode::ElementNode | 1 | |
QDomNode::AttributeNode | 2 | |
QDomNode::TextNode | 3 | |
QDomNode::CDATASectionNode | 4 | |
QDomNode::EntityReferenceNode | 5 | |
QDomNode::EntityNode | 6 | |
QDomNode::ProcessingInstructionNode | 7 | |
QDomNode::CommentNode | 8 | |
QDomNode::DocumentNode | 9 | |
QDomNode::DocumentTypeNode | 10 | |
QDomNode::DocumentFragmentNode | 11 | |
QDomNode::NotationNode | 12 | |
QDomNode::BaseNode | 21 | Объект QDomNode, т.е не подкласс QDomNode. |
QDomNode::CharacterDataNode | 22 |
Создаёт нулевой узел.
Создает копию n.
Данные в копиях общие (поверхностное копирование): изменение одного узла повлечет за собой и изменение другого. Если вы хотите использовать глубокое копирование, воспользуйтесь cloneNode().
Уничтожает объекты и освобождает их ресурсы.
Присоединяет узел newChild в качестве последнего потомка к текущему.
Если newChild является потомком другого узла, то его предок изменяется на текущий узел. Если newChild узел является потомком данного узла, изменяется его позиция в списке детей.
Если newChild является QDomDocumentFragment, все потомки фрагмента удаляются из него и присоединяются к текущему узлу.
Если newChild является QDomElement и текущий узел является QDomDocument, уже имеющим такой элемент в качестве потомка, newChild не будет добавлен, пустой узел будет возвращен.
При вызове этой функции у нулевого узла (созданного, например, с помощью конструктора по-умолчанию) ничего не произойдет.
Спецификация DOM запрещает вставку узлов атрибутов, но из-за исторических соображений QDom позволяет это.
Смотрите также insertBefore(), insertAfter(), replaceChild() и removeChild().
Возвращает словарь всех атрибутов. Атрибуты предусмотрены только для объектов QDomElement.
Изменение атрибутов в словаре приведет к изменению их и непосредственно в объекте QDomNode.
Возвращает список всех непосредственных потомков.
Наиболее часто вы будете пользоваться функцией объекта QDomElement.
Например, если XML документ выглядит следующим образом:
<body> <h1>Heading</h1> <p>Hello <b>you</b></p> </body>
То список узлов потомков "body"-элемента будет состоять из узла, созданного тегом <h1>, и узла, созданного тегом <p>.
Узлы в списке не являются копиями; потому изменение узлов в списке приведет и к изменению их в самом объекте.
Смотрите также firstChild() и lastChild().
Конвертирует узел в нулевой; если узел не был нулевым, его содержимое удаляется.
Смотрите также isNull().
Создает глубокую (не поверхностную) копию объекта QDomNode.
Если deep равен true, клонирование происходит рекурсивно, что означает, что все дети узла будут скопированны подобным же образом. Если deep равен false, будет скопирован только текущий узел, узлы-потомки скопированы не будут.
Для узлов, созданных с помощью QDomDocument::setContent(), эта функция возвращает номер столбца в XML документе, где он был проанализирован. В противном случае возвращает -1.
Эта функция была введена в Qt 4.1.
Смотрите также lineNumber() и QDomDocument::setContent().
Возвращает первого потомка узла. Если такового нет, возвращается нулевой узел. Изменения возвращенного узла приведут и к изменениям узла в дереве документа.
Смотрите также lastChild() и childNodes().
Возвращает первого потомка с именем тега tagName, если tagName не пуст; в противном случае возвращает первого потомка элемента. Если вышеуказанных узлов не обнаружено, возвращается нулевой элемент.
Смотрите также lastChildElement(), previousSiblingElement() и nextSiblingElement().
Возвращает true, если узел имеет атрибуты; в противном случае возвращает false.
Смотрите также attributes().
Возвращает true, если узел имеет одного или более потомков; в противном случае возвращает false.
Вставляет узел newChild после refChild. refChild должен быть непосредственным потомком текущего узла. Если refChild является нулевым, тогда newChild присоединяется в качестве последнего потомка.
Если newChild является потомком другого узла, то его предок изменяется на текущий узел. Если newChild узел является потомком данного узла, изменяется его позиция в списке детей.
Если newChild является QDomDocumentFragment, тогда дети этого фрагмента удаляются из него и вставляются после refChild.
Возвращает новую ссылку на newChild в случае успешного завершения или нулевой узел в случае неудачи.
Спецификация DOM запрещает вставку узлов атрибутов, но из-за исторических соображений QDom позволяет это.
Смотрите также insertBefore(), replaceChild(), removeChild() и appendChild().
Вставляет узел newChild перед refChild. refChild должен быть непосредственным потомком текущего узла. Если refChild является нулевым, тогда newChild присоединяется в качестве первого потомка.
Если newChild является потомком другого узла, то его предок изменяется на текущий узел. Если newChild узел является потомком данного узла, изменяется его позиция в списке детей.
Если newChild является QDomDocumentFragment, тогда дети этого фрагмента удаляются из него и вставляются до refChild.
Возвращает новую ссылку на newChild в случае успешного завершения или нулевой узел в случае неудачи.
Спецификация DOM запрещает вставку узлов атрибутов, но из-за исторических соображений QDom позволяет это.
Смотрите также insertAfter(), replaceChild(), removeChild() и appendChild().
Возвращает true, если узел является атрибутом; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomAttribute; вы можете получить QDomAttribute с помощью toAttribute().
Смотрите также toAttr().
Возвращает true, если узел является секцией CDATA; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomCDATASection; вы можете получить QDomCDATASection с помощью toCDATASection().
Смотрите также toCDATASection().
Возвращает true, если узел является a узлом с символьной информацией; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomCharacterData; вы можете получить QDomCharacterData с помощью toCharacterData().
Смотрите также toCharacterData().
Возвращает true, если узел является комментарием; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomComment; вы можете получить QDomComment с помощью toComment().
Смотрите также toComment().
Возвращает true, если узел является документом; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomDocument; вы можете получить QDomDocument с помощью toDocument().
Смотрите также toDocument().
Возвращает true, если узел является фрагментом документа; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomDocumentFragment; вы можете получить QDomDocumentFragment с помощью toDocumentFragment().
Смотрите также toDocumentFragment().
Возвращает true, если узел является типом документа; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomDocumentType; вы можете получить QDomDocumentType с помощью toDocumentType().
Смотрите также toDocumentType().
Возвращает true, если узел является элементом; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomElement; вы можете получить QDomElement с помощью toElement().
Смотрите также toElement().
Возвращает true, если узел является сущностью; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomEntity; вы можете получить QDomEntity с помощью toEntity().
Смотрите также toEntity().
Возвращает true, если узел является ссылкой на сущность; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomEntityReference; вы можете получить QDomEntityReference с помощью toEntityReference().
Смотрите также toEntityReference().
Возвращает true, если узел является нотацией; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomNotation; вы можете получить QDomNotation с помощью toNotation().
Смотрите также toNotation().
Возвращает true, если текущий узел является нулевым (т.е он не имеет типа или содержимого); в противном случае возвращает false.
Возвращает true, если узел является инструкцией обработки; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomProcessingInstruction; вы можете получить QProcessingInstruction with toProcessingInstruction().
Смотрите также toProcessingInstruction().
Возвращает true, если DOM представление функциональности feature и текущая функциональность поддерживаются узлом в текущей версии version; в противном случает возвращает false.
Смотрите также QDomImplementation::hasFeature().
Возвращает true, если узел является a text node; в противном случае возвращает false.
Если эта функция возвращает true, это не значит, что данный объект является QDomText; вы можете получить QDomText с помощью toText(().
Смотрите также toText().
Возвращается последний потомок узла. Если такового нет, возвращается нулевой узел. Изменения возвращенного узла приведут и к изменениям узла в дереве документа.
Смотрите также firstChild() и childNodes().
Возвращает последний элемент с именем тега tagName, если tagName не является пустым; в противном случае возвращается первый потомок. Если вышеуказанных узлов не обнаружено, возвращается нулевой элемент.
Смотрите также firstChildElement(), previousSiblingElement() и nextSiblingElement().
Для узлов, созданных с помощью QDomDocument::setContent), эта функция возвращает номер строки в XML документе, куда узел был помещен. В противном случае возвращает -1.
Эта функция была введена в Qt 4.1.
Смотрите также columnNumber() и QDomDocument::setContent().
Если узел использует пространство имен, данная функция возвращает локальное имя узла; в противном случае возвращается пустая строка.
Только ElementNode или AttributeNode могут работать с пространствами имён. Причем оно должно быть определено при создании; невозможно добавить пространство имен позже.
QDomDocument::createAttributeNS()
Смотрите также prefix(), namespaceURI() и QDomDocument::createElementNS().
Возвращает первого потомка текущего узла, имя (nodeName()) которого равно name.
Если непосредственных детей нет, возвращается нулевой узел.
Смотрите также nodeName().
Возвращает URI пространства имен данного узла или пустую строку, если URI нет.
Только ElementNode или AttributeNode могут работать с пространствами имён. URI пространства имен должен быть определен на момент создания и не может быть изменен позже.
QDomDocument::createAttributeNS()
Смотрите также prefix(), localName() и QDomDocument::createElementNS().
Возвращает следующий соседний элемент в дереве документа. Изменения возвращенного узла приведут и к изменениям узла в дереве документа.
Если у вас есть XML:
<h1>Heading</h1> <p>The text...</p> <h2>Next heading</h2>
и текущий QDomNode представляет тег <p>, nextSibling() вернет узел, представляющий тег <h2>.
Смотрите также previousSibling().
Возвращает следующий соседний элемент в дереве документа с именем tagName, если tagName не является пустым; в противном случае возвращается следующий элемент с любым именем. Если вышеозначенных элементов не существует, возвращается нулевой элемент.
Смотрите также firstChildElement(), previousSiblingElement() и lastChildElement().
Возвращает имя узла.
Значение имени зависит от подкласса:
Имя | Значение |
---|---|
QDomAttr | Имя атрибута |
QDomCDATASection | Строка "#cdata-section" |
QDomComment | Строка "#comment" |
QDomDocument | Строка "#document" |
QDomDocumentFragment | Строка "#document-fragment" |
QDomDocumentType | Имя типа документа |
QDomElement | Имя тега |
QDomEntity | Имя сущности |
QDomEntityReference | Имя сущности, на которою ссылаются |
QDomNotation | Имя нотации |
QDomProcessingInstruction | Цель инструкции обработки |
QDomText | Строка "#text" |
Примечание: Эта функция не учитывает наличия пространств имен при обработке имен узлов элементов и атрибутов. В результате возвращаемое имя может содержать любой префикс пространства имен, который мог быть представлен. Чтобы получить имя элемента или атрибута, используйте localName(); чтобы получить префикс пространства имен, используйте namespaceURI().
Смотрите также nodeValue().
Возвращает тип узла.
Смотрите также toAttr(), toCDATASection(), toDocumentFragment(), toDocument(), toDocumentType(), toElement(), toEntityReference(), toText(), toEntity(), toNotation(), toProcessingInstruction(), toCharacterData() и toComment().
Возвращает значение узла.
Содержание возвращаемого значения зависит от подкласса узла:
Имя | Значение |
---|---|
QDomAttr | Значение атрибута |
QDomCDATASection | Содержание сегмента CDATA |
QDomComment | Комментарий |
QDomProcessingInstruction | Данные инструкции обработки |
QDomText | Текст |
Все остальные подклассы не имеют значения, при вызове этой функции будет возвращена пустая строка.
Смотрите также setNodeValue() и nodeName().
Вызыв normalize() приводит всех потомков и их детей в стандартную форму. Это означает, что смежны узел QDomText будет объединён с соседними в один узел (узлы QDomCDATASection не могут быть объединены).
Возвращает тип текущего документа.
Возвращает узел предка. Если у узла нет предков, возвращается нулевой узел (т.е. узел, у которого функция isNull() возвращает true).
Возвращает префикс пространства имен данного узла или пустую строку, если такового нет.
Только ElementNode или AttributeNode могут работать с пространствами имён. Префикс пространства имен должен быть определен на момент создания. Если узел был создан с префиксом, вы можете изменить его позже с помощью setPrefix().
Если вы создаёте элемент или атрибут с помощью QDomDocument::createElement() или QDomDocument::createAttribute(), префикс будет пустой строкой. Если вы используете QDomDocument::createElementNS() или QDomDocument::createAttributeNS(), префикс не будет пустой строкой; но он может быть пустой строкой, если имя не имеет префикса.
QDomDocument::createElementNS() QDomDocument::createAttributeNS()
Смотрите также setPrefix(), localName() и namespaceURI().
Возвращает предыдущий соседний элемент в дереве документа. Изменения возвращенного узла приведут и к изменениям узла в дереве документа.
Например, если у вас есть код
<h1>Heading</h1> <p>The text...</p> <h2>Next heading</h2>
и текущий QDomNode представляет тег <p>, previousSibling() вернет узел, представляющий тег <h1>.
Смотрите также nextSibling().
Возвращает предыдущий соседний элемент в дереве документа с именем tagName, если tagName не является пустым; в противном случае возвращается предыдущий элемент с любым именем. Если вышеозначенных элементов не существует, возвращается нулевой элемент.
Смотрите также firstChildElement(), nextSiblingElement() и lastChildElement().
Удяляет oldChild из списка потомков. oldChild должен являться непосредственным потомком текущего узла.
Возвращается ссылка на oldChild при удачной попытке удаления и ссылку на нулевой узел в случае провала.
Смотрите также insertBefore(), insertAfter(), replaceChild() и appendChild().
Замещает oldChild новым newChild. oldChild должен являться непосредственным потомком текущего узла.
Если newChild является потомком другого узла, то его предок изменяется на текущий узел. Если newChild узел является потомком данного узла, изменяется его позиция в списке детей.
Если newChild является QDomDocumentFragment, тогда oldChild замещается всеми детьми фрагмента.
Возвращается ссылка на oldChild при удачной попытке замещения и ссылку на нулевой узел в случае провала.
Смотрите также insertBefore(), insertAfter(), removeChild() и appendChild().
Пишет XML представление узла node и всех его детей в поток str. Эта функция использует indent для определения объема пространства отступа для подэлементов.
Если узел является узлом документа, кодировка потока str устанавливается по инструкции обработки с именем "xml", являющейся XML декларацией, если таковая определена, в противном случае используется UTF-8. XML декларация не является, по сути, инструкцией обработки, но её поведение подобно таковой по историческим причинам. Если узел не является узлом документа, используется кодировка потока.
Если документ содержит невалидные XML символы или символы, которые не могут быть закодированы в данной кодировке, результат будет неопределен.
Эта перегруженная функция, предоставленная для удобства.
Если encodingPolicy является QDomNode::EncodingFromDocument, данная функция работает как save(QTextStream &str, int indent).
Если encodingPolicy является EncodingFromTextStream и текущий узел является узлом документа, данная функция работает как save(QTextStream &str, int indent) с той только особенностью, что кодировка определяется потоком str.
Если документ содержит невалидные XML символы или символы, которые не могут быть закодированы в данной кодировке, результат будет неопределен.
Эта функция была введена в Qt 4.2.
Устанавливает значение узла в v.
Смотрите также nodeValue().
Если узел имеер префикс пространства имён, данная функция меняет его на pre. В противном случае функция ничего не делает.
Только ElementNode или AttributeNode могут работать с пространствами имён. Префикс пространства имён должен быть определён во время создания объекта; невозможно добавить префикс после.
QDomDocument::createElementNS() QDomDocument::createAttributeNS()
Смотрите также prefix(), localName() и namespaceURI().
Преобразует QDomNode в QDomAttr. Если узел не является атрибутом, возвращённый объект будет нулевым.
Смотрите также isAttr().
Преобразует QDomNode в QDomCDATASection. Если узел не является CDATA областью, возвращённый объект будет нулевым.
Смотрите также isCDATASection().
Преобразует QDomNode в QDomCharacterData. Если узел не является текстовым узлом, возвращённый объект будет нулевым.
Смотрите также isCharacterData().
Преобразует QDomNode в QDomComment. Если узел не является нотацией, возвращённый объект будет нулевым.
Смотрите также isComment().
Преобразует QDomNode в QDomDocument. Если узел не является документом, возвращённый объект будет нулевым.
Смотрите также isDocument().
Преобразует QDomNode в QDomDocumentFragment. Если узел не является фрагментом документа, возвращённый объект будет нулевым.
Смотрите также isDocumentFragment().
Преобразует QDomNode в QDomDocumentType. Если узел не является типом документа, возвращённый объект будет нулевым.
Смотрите также isDocumentType().
Преобразует QDomNode в QDomElement. Если узел не является элементом, возвращённый объект будет нулевым.
Смотрите также isElement().
Преобразует QDomNode в QDomEntity. Если узел не является сущностью, возвращённый объект будет нулевым.
Смотрите также isEntity().
Преобразует QDomNode в QDomEntityReference. Если узел не является ссылкой на сущность, возвращённый объект будет нулевым.
Смотрите также isEntityReference().
Преобразует QDomNode в QDomNotation. Если узел не является нотацией, возвращенный объект будет нулевым.
Смотрите также isNotation().
Преобразует QDomNode в QDomProcessingInstruction. Если узел не является инструкцией обработки, возвращенный объект будет нулевым.
Смотрите также isProcessingInstruction().
Преобразует QDomNode в QDomText. Если узел не является текстовым, возвращенный объект будет нулевым.
Смотрите также isText().
Возвращает true, если узел n не равен текущему; в противном случае возвращает false.
Ассоциирует n с данным DOM узлом.
Данные в копиях общие (поверхностное копирование): изменение одного узла повлечет за собой и изменение другого. Если вы хотите использовать глубокое копирование, воспользуйтесь cloneNode().
Возвращает true, если узел n равен текущему; в противном случае возвращает false.
Любое представление QDomNode выступает в качестве ссылки на изначальную структуру данных в QDomDocument. Данный тест проверяет, являются ли оба представления ссылками на один основополагающий узел. Например:
QDomDocument document; QDomElement element1 = document.documentElement(); QDomElement element2 = element1;
Оба узла (QDomElement является подклассом QDomNode) ссылаются на корневой элемент документа, а element1 == element2 вернет true. С другой стороны:
QDomElement element3 = document.createElement("MyElement"); QDomElement element4 = document.createElement("MyElement");
Даже если оба узла являются пустыми элементами с одним именем, element3 == element4 вернет false, так как они ссылаются на два различных узла в изначальной структуре данных.
Эта перегруженная функция, предоставленная для удобства.
Пишет XML представление узла node и всех его потомков в поток str.
Copyright © 2007 Trolltech | Trademarks | Qt 4.3.2 |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |