Описание класса QDomElement
|
QDomElement () | |
QDomElement ( const QDomElement & x ) | |
QString | attribute ( const QString & name, const QString & defValue = QString() ) const |
QString | attributeNS ( const QString nsURI, const QString & localName, const QString & defValue = QString() ) const |
QDomAttr | attributeNode ( const QString & name ) |
QDomAttr | attributeNodeNS ( const QString & nsURI, const QString & localName ) |
QDomNamedNodeMap | attributes () const |
QDomNodeList | elementsByTagName ( const QString & tagname ) const |
QDomNodeList | elementsByTagNameNS ( const QString & nsURI, const QString & localName ) const |
bool | hasAttribute ( const QString & name ) const |
bool | hasAttributeNS ( const QString & nsURI, const QString & localName ) const |
QDomNode::NodeType | nodeType () const |
void | removeAttribute ( const QString & name ) |
void | removeAttributeNS ( const QString & nsURI, const QString & localName ) |
QDomAttr | removeAttributeNode ( const QDomAttr & oldAttr ) |
void | setAttribute ( const QString & name, const QString & value ) |
void | setAttribute ( const QString & name, int value ) |
void | setAttribute ( const QString & name, uint value ) |
void | setAttribute ( const QString & name, qlonglong value ) |
void | setAttribute ( const QString & name, qulonglong value ) |
void | setAttribute ( const QString & name, float value ) |
void | setAttribute ( const QString & name, double value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, const QString & value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, int value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, uint value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, qlonglong value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, qulonglong value ) |
void | setAttributeNS ( const QString nsURI, const QString & qName, double value ) |
QDomAttr | setAttributeNode ( const QDomAttr & newAttr ) |
QDomAttr | setAttributeNodeNS ( const QDomAttr & newAttr ) |
void | setTagName ( const QString & name ) |
QString | tagName () const |
QString | text () const |
QDomElement & | operator= ( const QDomElement & x ) |
Класс QDomElement представляет один элемент в дереве DOM.
Элементы имеют имя тега tagName() и ноль или более атрибутов, связанных с ним. Имя тега может быть изменено посредством функции setTagName().
Атрибуты элемента представляются в виде объектов QDomAttr и могут быть получены с помощью функций attribute() и attributeNode(). Вы можете задать атрибуты с помощью функций setAttribute() и setAttributeNode(). Атрибуты могут быть удалены посредством removeAttribute(). Существуют аналоги вышеназванных функций с учетом пространств имен, например, setAttributeNS(), setAttributeNodeNS() и removeAttributeNS().
Если вы хотите получить доступ к тексту узла, воспользуйтесь text(), например,
QDomElement e = //... //... QString s = e.text()
Функция text() работает рекурсивно при поиске текста (поскольку не все элементы его содержат). Если вы хотите получить весь текст, содержащийся в потомках, перебирайте их всех в поиске узлов QDomText, например
QString text; QDomElement element = doc.documentElement(); for(QDomNode n = element.firstChild(); !n.isNull(); n = n.nextSibling()) { QDomText t = n.toText(); if (!t.isNull()) text += t.data(); }
Помните, что мы пытаемся преобразовать каждый узел в текстовый, используя text(), а не firstChild().toText().data() или n.toText().data() непосредственно у узла, потому что он может оказаться не текстовым элементом.
Вы можете получить список всех потомков элемента, которые имеют определенное имя тега, с помощью elementsByTagName() или elementsByTagNameNS().
Для навигации по элементам документа DOM используйте firstChildElement(), lastChildElement(), nextSiblingElement() и previousSiblingElement(). Например, для перебора всех потомков, имя которых "entry", у элемента с именем "database", вы можете использовать следующий код:
QDomDocument doc = // ... QDomElement root = doc.firstChildElement("database"); QDomElement elt = root.firstChildElement("entry"); for (; !elt.isNull(); elt = elt.nextSiblingElement("entry")) { // ... }
Для получения дополнительной информации о Document Object Model смотрите спецификации Уровень 1 и Уровень 2. Для того, чтобы больше узнать о реализации DOM, смотрите документацию по QDomDocument.
Создает пустой элемент. Используйте функцию QDomDocument::createElement(), если хотите создать элемент с содержимым.
Создаёт копию x
Данные в копиях общие (поверхностное копирование): изменение одного узла повлечет за собой изменение другого. Если вы хотите использовать глубокое копирование, воспользуйтесь cloneNode().
Возвращает атрибут с именем name. Если такого атрибута не существует, возвращается defValue.
Смотрите также setAttribute(), attributeNode(), setAttributeNode() и attributeNS().
Возвращает атрибут с локальным именем localName и URI пространства имен nsURI. Если такого атрибута не существует, возвращается defValue.
Смотрите также setAttributeNS(), attributeNodeNS(), setAttributeNodeNS() и attribute().
Возвращает объект QDomAttr, который соответствует атрибуту с именем name. Если такой атрибут не существует, возвращается нулевой атрибут.
Смотрите также setAttributeNode(), attribute(), setAttribute() и attributeNodeNS().
Возвращает объект QDomAttr, который соответствует атрибуту с локальным именем localName и URI пространства имен nsURI. Если такой атрибут не существует, возвращается нулевой атрибут.
Смотрите также setAttributeNodeNS(), setAttributeNode(), attribute() и setAttribute().
Возвращает QDomNamedNodeMap, содержащий все атрибуты элемента.
Смотрите также attribute(), setAttribute(), attributeNode() и setAttributeNode().
Возвращает QDomNodeList, содержащий в себе всех потомков элемента с именем tagname встретившиеся во время обхода в прямом порядке поддерева элементов с элементом в качестве корня. Порядок элементов в возвращаемом списке такой же, в каком они были встречены во время обхода в прямом порядке.
Смотрите также elementsByTagNameNS() QDomDocument::elementsByTagName().
Возвращает QDomNodeList, содержащий всех потомков данного элемента с локальным именем localName и URI пространства имен nsURI, встретившиеся во время обхода в прямом порядке поддерева элементов с элементом в качестве корня. Порядок элементов в возвращаемом списке такой же, в каком они были встречены во время обхода в прямом порядке.
Смотрите также elementsByTagName() и QDomDocument::elementsByTagNameNS().
Возвращает true, если данный элемент имеет атрибут с именем name; в противном случае возвращает false.
Замечание: функция не учитывает пространств имен. В результате указанное имя будет проверяться во всех атрибутах, имеющих всевозможные префиксы пространств имен.
Используйте hasAttributeNS() для проверки атрибутов с учетом определенных пространств имен.
Возвращает true, если у данного элемента есть атрибут с локальным именем localName и URI пространства имен nsURI; в противном случае возвращает false.
Возвращает ElementNode.
Удаляет атрибут с именем name из данного элемента.
Смотрите также setAttribute(), attribute() и removeAttributeNS().
Удаляет атрибут с локальным именем localName и URI пространства имен nsURI из данного элемента.
Смотрите также setAttributeNS(), attributeNS() и removeAttribute().
Удаляет атрибут oldAttr из данного элемента и возвращает удаленный атрибут.
Смотрите также attributeNode() и setAttributeNode().
Добавляет атрибут с именем name и значением value. Если атрибут с таким именем уже существует, его значение заменяется на value.
Смотрите также attribute(), setAttributeNode() и setAttributeNS().
Это перегруженная функция.
Число форматируется согласно текущей локали.
Это перегруженная функция.
Число форматируется согласно текущей локали.
Это перегруженная функция.
Число форматируется согласно текущей локали.
Это перегруженная функция.
Число форматируется согласно текущей локали.
Это перегруженная функция.
Число форматируется согласно текущей локали.
Это перегруженная функция.
Число форматируется согласно текущей локали.
Добавляет атрибут с полным именем qName и URI пространства имен nsURI со значением value. Если атрибут с такими локальным именем и URI пространства имен уже существует, его префикс заменяется на qName и его значение изменяется на value.
Хотя qName и является полным именем, локальное имя используется для того, чтобы определить, значение какого атрибута должно быть заменено.
Смотрите также attributeNS(), setAttributeNodeNS() и setAttribute().
Это перегруженная функция.
Это перегруженная функция.
Это перегруженная функция.
Это перегруженная функция.
Это перегруженная функция.
Добавляет атрибут newAttr к текущему элементу.
Если элемент уже имеет другой атрибут с тем же именем (newAttr), функция заменит имеющийся атрибут и вернет его; в противном случае функция вернет нулевой атрибут.
Смотрите также attributeNode(), setAttribute() и setAttributeNodeNS().
Добавляет атрибут newAttr к текущему элементу.
Если элемент уже содержит другой атрибут с теми же локальным именем и URI пространства имен, как и newAttr, функция замещает этот атрибут и возвращает его; в противном случае функция возвращает нулевой атрибут.
Смотрите также attributeNodeNS(), setAttributeNS() и setAttributeNode().
Устанавливает имя тега элемента в name.
Смотрите также tagName().
Возвращает имя тега данного элемента. Например, если XML документ выглядит следующим образом:
<img src="myimg.png">
функция вернет "img".
Смотрите также setTagName().
Возвращает текст элемента или пустую строку.
Пример:
<h1>Hello <b>Qt</b> <![CDATA[<xml is cool>]]></h1>
Функция text() класса QDomElement для тега <h1> вернет следующий текст:
Hello Qt <xml is cool>
В этой функции комментарии игнорируются. Она учитывает только объекты QDomText и QDomCDATASection.
Ассоциирует x с текущим элементом DOM.
Данные в копиях общие (поверхностное копирование): изменение одного узла повлечет за собой изменение другого. Если вы хотите использовать глубокое копирование, воспользуйтесь cloneNode().
Авторские права © 2010 Nokia Corporation и/или её дочерние компании | Торговые марки | Qt 4.6.4 |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |