「QDomNode」の編集履歴(バックアップ)一覧はこちら
QDomNode - (2014/05/28 (水) 21:27:27) の最新版との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*注意
**cloneNode()以外はシャローコピーです
返り値であるオブジェクトを変更すると、DOMツリー上のオブジェクトも変更されます。
**&color(brown){nullノード}とは
isNull()の値がtrueである空のノードです
----
*基本
**コンストラクタ
QDomNode::QDomNode()
&color(brown){nullノード}を作成します
**コピーコンストラクタ
QDomNode::QDomNode(const QDomNode & n)
オブジェクトはシャローコピーされます
ディープコピーをする場合はcloneNode()を使用します
**デストラクタ
QDomNode::~QDomNode()
*ノードに関する情報を取得する
**型を取得する
NodeType QDomNode::nodeType() const
本ノードの型を取得します
|enum QDomNode::NodeType|値|内容|
|QDomNode::ElementNode|1|要素のノード|
|QDomNode::AttributeNode|2|属性のノード|
|QDomNode::TextNode|3|テキストノード|
|QDomNode::CDATASectionNode|4|CDATAノード|
|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::CharacterDataNode|22|文字データノード|
**名前を取得する
→[[例 ノード名を取得する]]
QString QDomNode::namespaceURI() const
本ノードの名前空間URIを取得します
名前空間URIを持たない場合は空の文字列を返します
QString QDomNode::prefix() const
本ノードの名前空間接頭辞を取得します
名前空間接頭辞を持たない場合は空の文字列を返します
-名前空間URI及び接頭辞はノード生成時に指定されなければならず、後から指定しますことはできません
-[[QDomElement]] オブジェクトまたは [[QDomAttr]] オブジェクトのみ名前空間URI及び接頭辞を持つことができます
-QDomDocument::createElement() を使用して作成した要素または QDomDocument::createAttribute() を使用して作成した属性は名前空間URI及び接頭辞には空の文字列が設定されます
-QDomDocument::createElementNS() を使用して作成した要素または QDomDocument::createAttributeNS() を使用して作成した属性は名前空間URI及び接頭辞が設定されます
QString QDomNode::localName() const
本ノードが名前空間を利用している場合、ローカル名を取得します
名前空間を利用していない場合は空の文字列を返します
QString QDomNode::nodeName() const
本ノードの名前を取得します
名前の意味はノードのオブジェクトによって異なります
名前空間は考慮されていないので正確な名前を得る場合は namespaceURI() 及び localName() を使用します
|enum QDomNode::NodeType|返り値|
|QDomAttr|属性名|
|QDomCDATASection|"#cdata-section"|
|QDomComment|"#comment"|
|QDomDocument|"#document"|
|QDomDocumentFragment|"#document*fragment"|
|QDomDocumentType|文章型名|
|QDomElement|タグ名|
|QDomEntity|実体名|
|QDomEntityReference|参照された実体名|
|QDomNotation|記法名|
|QDomProcessingInstruction|処理命令のターゲット|
|QDomText|"#text"|
void QDomNode::setPrefix(const QString & pre)
本ノードが名前空間接頭辞を持っている場合、名前空間接頭辞を変更できます
持っていない場合は何もしません
[[QDomElement]] オブジェクト または [[QDomAttr]] オブジェクトのみ名前空間を持つことができます
名前空間はノード生成時に指定されなければならず、後から名前空間を指定することはできません
----
*関係するノードを取得する
**ルートノードを取得する
QDomDocument QDomNode::ownerDocument() const
本ノードのルートノードを取得します
**親ノードを取得する
QDomNode QDomNode::parentNode() const
本ノードの親ノードを取得します
親ノードが存在しない場合、&color(brown){nullノード}を返します
**兄弟ノードを取得する
QDomNode QDomNode::nextSibling() const
次の兄弟ノードを取得します
次の兄弟ノードが存在しない場合は&color(brown){nullノード}を返します
QDomNode QDomNode::previousSibling() const
前の兄弟ノードを取得します
前の兄弟ノードが存在しない場合は&color(brown){nullノード}を返します
**子ノード
***子ノードを取得する
bool QDomNode::hasChildNodes() const
子ノードが存在する場合はtrue、そうでない場合はfalseを返します
QDomNodeList QDomNode::childNodes() const
本ノードの直接の子ノードのリストを取得します
子ノードが存在しない場合は空の [[QDomNodeList]] を返します
QDomNode QDomNode::firstChild() const
本ノードの最初の子ノードを取得します
子ノードが存在しない場合は&color(brown){nullノード}を返します
QDomNode QDomNode::lastChild() const
本ノードの最後の子ノードを取得します
子ノードがない場合は&color(brown){nullノード}を返します
QDomNode QDomNode::namedItem(const QString & name) const
nodeName() の値が name と等しい最初に見つかった子ノードを取得します
該当するノードが存在しない場合は&color(brown){nullノード}を返します
ノード名とは nodeName() で得られる値です
***子ノードを削除する
QDomNode QDomNode::removeChild(const QDomNode & &color(coral){oldChild})
-成功した場合は &color(coral){oldChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){oldChild} で指定した子ノードを本ノードから削除します
-&color(coral){oldChild} は本ノードの直接の子ノードである必要があります
***子ノードを置換する
QDomNode QDomNode::replaceChild(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){oldChild})
&color(coral){oldChild} を &color(coral){newChild} で置換します
-成功した場合は &color(coral){oldChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){oldChild} は本ノードの直接の子ノードである必要があります
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、&color(coral){oldChild} はフラグメントにある子ノードに置換されます
***子ノードを追加する
QDomNode QDomNode::appendChild(const QDomNode & &color(coral){newChild})
本ノードの子ノードの最後に新しい子ノードを追加します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(brown){nullノード}でこの関数を呼んだ場合、なにもせず、&color(brown){nullノード}を返します
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは本ノードの子ノードの最後にまとめて追加されます
-&color(coral){newChild} が [[QDomElement]] オブジェクトであり、本ノードが既に要素ノードを子ノードに持った [[QDomDocument]] オブジェクトである場合、&color(coral){newChild} は追加されず、&color(brown){nullノード}を返します
-DOMの仕様では属性ノードを挿入することは許可されていませんが、歴史的な理由から QDom では許可されています
QDomNode QDomNode::insertAfter(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){refChild})
&color(coral){refChild} ノードの後に &color(coral){newChild} を挿入します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){refChild} は本ノードの直接の子ノードである必要があります
-&color(coral){refChild} にnullを指定した場合 &color(coral){newChild} は本ノードの子ノードの最後に追加されます
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは &color(coral){refChild} の後にまとめて追加されます
-DOMの仕様では属性ノードを挿入することは許可されていませんが、歴史的な理由から QDom では許可されています
QDomNode QDomNode::insertBefore(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){refChild})
&color(coral){refChild} ノードの前に &color(coral){newChild} を挿入します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){refChild} は本ノードの直接の子ノードである必要があります
-&color(coral){refChild} にnullを指定した場合 &color(coral){newChild} は本ノードの子ノードの最初に追加されます
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは &color(coral){refChild} の前にまとめて追加されます
DOMの仕様では属性ノードを挿入しますことは許可されていませんが、歴史的な理由から QDom では許可されています
**子要素
***子要素を取得する
QDomElement QDomNode::firstChildElement(const QString & tagName = QString()) const
指定したタグ名 tagName を持つ最初に見つかった子要素を取得します
タグ名を指定しなかった場合は最初の子要素を返します
該当する子要素がない場合は&color(brown){nullノード}を返します
QDomElement QDomNode::lastChildElement(const QString & tagName = QString()) const
指定したタグ名 tagName を持つ最後に見つかった子要素を取得します
タグ名を指定しなかった場合は最後の子要素を返します
該当する子要素がない場合は&color(brown){nullノード}を返します
QDomElement QDomNode::previousSiblingElement(const QString & tagName = QString()) const
指定したタグ名 tagName を持つ前の兄弟ノードを取得します
タグ名を指定しなかった場合は前の兄弟ノードを取得します
該当する子要素がない場合は&color(brown){nullノード}を返します
QDomElement QDomNode::nextSiblingElement(const QString & tagName = QString()) const
指定したタグ名 tagName を持つ次の兄弟ノードを取得します
タグ名を指定しなかった場合は次の兄弟ノードを取得します
該当する子要素がない場合は&color(brown){nullノード}を返します
----
**属性
***属性を取得する
QDomNamedNodeMap QDomNode::attributes() const
すべての属性の名前付きノードマップを取得します
属性は [[QDomElement]] オブジェクトでのみ提供されます
***属性があるかチェックする
bool QDomNode::hasAttributes() const
本ノードが属性を持っている場合はtrue、そうでない場合はfalseを返します
**値
***値を取得する
QString QDomNode::nodeValue() const
本ノードの値を取得します
値の意味はノードのオブジェクトによって異なります
以下以外の子クラスでは空の文字列を返します
|QDomAttr|属性値|
|QDomCDATASection|CDATAセクションのコンテンツ|
|QDomComment|コメント|
|QDomProcessingInstruction|命令処理のデータ|
|QDomText|テキスト|
***値を設定する
void QDomNode::setNodeValue(const QString & v)
本ノードに値を設定します
*メソッド
**クリアする
void QDomNode::clear()
本ノードを&color(brown){nullノード}にします
本ノードが所持しているコンテンツや型などは削除されます
**コピーする
QDomNode QDomNode::cloneNode(bool deep = true) const
QDomNodeのディープコピーを作成します
deep=trueの場合、子ノード以下もすべてコピーされます
deep=falseの場合、本ノードのみコピーされます
**オブジェクトのタイプを判定する
bool QDomNode::isNull() const
本ノードが&color(brown){nullノード}である場合はtrue、そうでない場合はfalseを返します
bool QDomNode::isAttr() const
本ノードが属性である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomAttr]] オブジェクトであることを示すものではありません
bool QDomNode::isCDATASection() const
本ノードがCDATAセクションである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomCDATASection]] オブジェクトを示すものではありません
bool QDomNode::isCharacterData() const
本ノードが文字データノードである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomCharacterData]] オブジェクトを示すものではありません
bool QDomNode::isComment() const
本ノードがコメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomComment]] オブジェクトを示すものではありません
bool QDomNode::isDocument() const
本ノードがドキュメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocument]] オブジェクトを示すものではありません
bool QDomNode::isDocumentFragment() const
本ノードがドキュメントフラグメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocumentFragment]] オブジェクトを示すものではありません
bool QDomNode::isDocumentType() const
本ノードが文章型である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocumentType]] オブジェクトを示すものではありません
bool QDomNode::isElement() const
本ノードが要素である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomElement]] オブジェクトを示すものではありません
bool QDomNode::isEntity() const
本ノードが実体である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomEntity]] オブジェクトを示すものではありません
bool QDomNode::isEntityReference() const
本ノードが実体参照である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomEntityReference]] オブジェクトを示すものではありません
bool QDomNode::isNotation() const
本ノードがNOTATIONである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomNotation]] オブジェクトを示すものではありません
bool QDomNode::isProcessingInstruction() const
本ノードが処理命令である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomProcessingInstruction]] オブジェクトを示すものではありません
bool QDomNode::isText() const
本ノードがテキストである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードがQDomTextオブジェクトを示すものではありません
**変換する
QDomCDATASection QDomNode::toCDATASection() const
QDomNode を子クラスである QDomCDATASection に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomCharacterData QDomNode::toCharacterData() const
QDomNode を子クラスである QDomCharacterData に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomComment QDomNode::toComment() const
QDomNode を子クラスである QDomComment に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomDocument QDomNode::toDocument() const
QDomNode を子クラスである QDomDocument に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomDocumentFragment QDomNode::toDocumentFragment() const
QDomNode を子クラスである QDomDocumentFragment に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomDocumentType QDomNode::toDocumentType() const
QDomNode を子クラスである QDomDocumentType に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomElement QDomNode::toElement() const
QDomNode を子クラスである QDomElement に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomEntity QDomNode::toEntity() const
QDomNode を子クラスである QDomEntity に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomEntityReference QDomNode::toEntityReference() const
QDomNode を子クラスである QDomEntityReference に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomNotation QDomNode::toNotation() const
QDomNode を子クラスである QDomNotation に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomProcessingInstruction QDomNode::toProcessingInstruction() const
QDomNode を子クラスである QDomProcessingInstruction に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomText QDomNode::toText() const
QDomNode を子クラスである QDomText に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
QDomAttr QDomNode::toAttr() const
QDomNode を子クラスである QDomAttr に変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
**その他
bool QDomNode::isSupported(const QString & feature, const QString & version) const
機能 feature がXMLDOMレベル version でサポートされている場合はtrue、そうでない場合はfalseを返します
int QDomNode::columnNumber() const
QDomDocument::setContent()で自動生成されたノードの場合、対応したXML文章上の列番号を返します
それ以外の手段で生成されたノードの場合は-1を返します
int QDomNode::lineNumber() const
QDomDocument::setContent()で自動生成されたノードの場合、対応したXML文章上の行番号を返します
それ以外の手段で生成されたノードの場合は-1を返します
**演算子
bool QDomNode::operator!=(const QDomNode & n) const
bool QDomNode::operator==(const QDomNode & n) const
QDomNode & QDomNode::operator=(const QDomNode & n)
----
以下未整理
void QDomNode::normalize()
要素ノードで呼ばれた場合、すべての子を標準形に変換します
つまり、隣接したQDomTextオブジェクトは一つに統合されます
void QDomNode::save(QTextStream & stream, int indent, EncodingPolicy encodingPolicy = QDomNode::EncodingFromDocument) const
ノード及びすべての子ノードをXMLで表現しなおしたものをstreamで指定したストリームに書き込みます
indentではノードのインデントに使用します空白の量を指定します
文章に無効なXML文字及び与えられた文字コードでエンコードできない文字が含まれる場合の挙動は定義されていません
encodingPolicy がQDomNode::EncodingFromDocumentであり、本ノードがドキュメントノードである場合、
テキストストリームの文字コードはXML宣言の名前xmlによって処理命令を扱うことによって設定されます
指定されていない場合はUTF8をデフォルトを指定します
しかしこの挙動は歴史的な理由です
本ノードがドキュメントノードでない場合、テキストストリームの文字コードを使用します
encodingPolicy が EncodingFromTextStreamであり、本ノードがドキュメントノードである場合、
この関数の挙動はテキストストリームstreamで指定された文字コードを使用しますこと以外は、save(QTextStream &str, int indent)と同じに振るまいます
文章に無効なXML文字及び与えられた文字コードでエンコードできない文字が含まれる場合の挙動は定義されていません
enum QDomNode::EncodingPolicy
QDomNode::save()で文章を保存します際のエンコーディング形式
QDomNode::EncodingFromDocument 1 文章のエンコーディング形式を使用
QDomNode::EncodingFromTextStream 2 QTextStreamて指定したエンコーディング形式を使用
*QDomNode
要素や属性といった各ノードのベースとなるクラスです
[[QDomNode (Qt5.3)>http://qt-project.org/doc/qt-5/qdomnode.html]]
*注意
**cloneNode()以外はシャローコピーです
返り値であるオブジェクトを変更すると、DOMツリー上のオブジェクトも変更されます。
**nullノードとは
isNull()の値がtrueである空のノードです
----
*基本
**コンストラクタ
|QDomNode::QDomNode()|
&color(brown){nullノード}を作成します
**コピーコンストラクタ
|QDomNode::QDomNode(const QDomNode & n)|
オブジェクトはシャローコピーされます
ディープコピーをする場合はcloneNode()を使用します
**デストラクタ
|QDomNode::~QDomNode()|
*ノードに関する情報を取得する
**型を取得する
|NodeType QDomNode::nodeType() const|
本ノードの型を取得します
|enum QDomNode::NodeType|値|内容|
|QDomNode::ElementNode|1|要素のノード|
|QDomNode::AttributeNode|2|属性のノード|
|QDomNode::TextNode|3|テキストノード|
|QDomNode::CDATASectionNode|4|CDATAノード|
|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::CharacterDataNode|22|文字データノード|
**名前を取得する
→[[例 ノード名を取得する]]
|QString QDomNode::namespaceURI() const|
本ノードの名前空間URIを取得します
名前空間URIを持たない場合は空の文字列を返します
|QString QDomNode::prefix() const|
本ノードの名前空間接頭辞を取得します
名前空間接頭辞を持たない場合は空の文字列を返します
-名前空間URI及び接頭辞はノード生成時に指定されなければならず、後から指定しますことはできません
-[[QDomElement]] オブジェクトまたは [[QDomAttr]] オブジェクトのみ名前空間URI及び接頭辞を持つことができます
-&color(cadetblue){[[QDomDocument]]::createElement()} を使用して作成した要素または &color(cadetblue){[[QDomDocument]]::createAttribute()} を使用して作成した属性は名前空間URI及び接頭辞には空の文字列が設定されます
-&color(cadetblue){[[QDomDocument]]::createElementNS()} を使用して作成した要素または &color(cadetblue){[[QDomDocument]]::createAttributeNS()} を使用して作成した属性は名前空間URI及び接頭辞が設定されます
|QString QDomNode::localName() const|
本ノードが名前空間を利用している場合、ローカル名を取得します
名前空間を利用していない場合は空の文字列を返します
|QString QDomNode::nodeName() const|
本ノードの名前を取得します
名前の意味はノードのオブジェクトによって異なります
名前空間は考慮されていないので正確な名前を得る場合は &color(cadetblue){namespaceURI()} 及び &color(cadetblue){localName()} を使用します
|enum QDomNode::NodeType|返り値|
|QDomAttr|属性名|
|QDomCDATASection|"#cdata-section"|
|QDomComment|"#comment"|
|QDomDocument|"#document"|
|QDomDocumentFragment|"#document*fragment"|
|QDomDocumentType|文章型名|
|QDomElement|タグ名|
|QDomEntity|実体名|
|QDomEntityReference|参照された実体名|
|QDomNotation|記法名|
|QDomProcessingInstruction|処理命令のターゲット|
|QDomText|"#text"|
|void QDomNode::setPrefix(const QString & &color(coral){pre})|
本ノードが名前空間接頭辞を持っている場合、名前空間接頭辞を変更できます
持っていない場合は何もしません
[[QDomElement]] オブジェクト または [[QDomAttr]] オブジェクトのみ名前空間を持つことができます
名前空間はノード生成時に指定されなければならず、後から名前空間を指定することはできません
----
*関係するノードを取得する
**ルートノードを取得する
|QDomDocument QDomNode::ownerDocument() const|
本ノードのルートノードを取得します
**親ノードを取得する
|QDomNode QDomNode::parentNode() const|
本ノードの親ノードを取得します
親ノードが存在しない場合、&color(brown){nullノード}を返します
**兄弟ノードを取得する
|QDomNode QDomNode::nextSibling() const|
次の兄弟ノードを取得します
次の兄弟ノードが存在しない場合は&color(brown){nullノード}を返します
|QDomNode QDomNode::previousSibling() const|
前の兄弟ノードを取得します
前の兄弟ノードが存在しない場合は&color(brown){nullノード}を返します
**子ノード
***子ノードを取得する
|bool QDomNode::hasChildNodes() const|
子ノードが存在する場合はtrue、そうでない場合はfalseを返します
|QDomNodeList QDomNode::childNodes() const|
本ノードの直接の子ノードのリストを取得します
子ノードが存在しない場合は空の [[QDomNodeList]] を返します
|QDomNode QDomNode::firstChild() const|
本ノードの最初の子ノードを取得します
子ノードが存在しない場合は&color(brown){nullノード}を返します
|QDomNode QDomNode::lastChild() const|
本ノードの最後の子ノードを取得します
子ノードがない場合は&color(brown){nullノード}を返します
|QDomNode QDomNode::namedItem(const QString & &color(coral){name}) const|
&color(cadetblue){nodeName()} の値が &color(coral){name} と等しい最初に見つかった子ノードを取得します
該当するノードが存在しない場合は&color(brown){nullノード}を返します
***子ノードを削除する
|QDomNode QDomNode::removeChild(const QDomNode & &color(coral){oldChild})|
&color(coral){oldChild}を本ノードの子から削除します
-成功した場合は &color(coral){oldChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){oldChild} で指定した子ノードを本ノードから削除します
-&color(coral){oldChild} は本ノードの直接の子ノードである必要があります
***子ノードを置換する
|QDomNode QDomNode::replaceChild(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){oldChild})|
&color(coral){oldChild} を &color(coral){newChild} で置換します
-成功した場合は &color(coral){oldChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){oldChild} は本ノードの直接の子ノードである必要があります
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、&color(coral){oldChild} はフラグメントにある子ノードに置換されます
***子ノードを追加する
|QDomNode QDomNode::appendChild(const QDomNode & &color(coral){newChild})|
本ノードの子ノードの最後に新しい子ノードを追加します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(brown){nullノード}でこの関数を呼んだ場合、なにもせず、&color(brown){nullノード}を返します
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは本ノードの子ノードの最後にまとめて追加されます
-&color(coral){newChild} が [[QDomElement]] オブジェクトであり、本ノードが既に要素ノードを子ノードに持った [[QDomDocument]] オブジェクトである場合、&color(coral){newChild} は追加されず、&color(brown){nullノード}を返します
-DOMの仕様では属性ノードを挿入することは許可されていませんが、歴史的な理由から QDom では許可されています
|QDomNode QDomNode::insertAfter(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){refChild})|
&color(coral){refChild} ノードの後に &color(coral){newChild} を挿入します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){refChild} は本ノードの直接の子ノードである必要があります
-&color(coral){refChild} に&color(brawn){nullノード}を指定した場合 &color(coral){newChild} は本ノードの子ノードの最後に追加されます
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは &color(coral){refChild} の後にまとめて追加されます
-DOMの仕様では属性ノードを挿入することは許可されていませんが、歴史的な理由から QDom では許可されています
|QDomNode QDomNode::insertBefore(const QDomNode & &color(coral){newChild}, const QDomNode & &color(coral){refChild})|
&color(coral){refChild} ノードの前に &color(coral){newChild} を挿入します
-成功した場合は &color(coral){newChild} の参照を返し、失敗した場合は&color(brown){nullノード}を返します
-&color(coral){refChild} は本ノードの直接の子ノードである必要があります
-&color(coral){refChild} に&color(brawn){nullノード}を指定した場合 &color(coral){newChild} は本ノードの子ノードの最初に追加されます
-&color(coral){newChild} が既に他のノードの子ノードである場合、本ノードの子ノードに変更されます
-&color(coral){newChild} が既に本ノードの子ノードである場合、位置が変更されます
-&color(coral){newChild} が [[QDomDocumentFragment]] オブジェクトの場合、フラグメントにある子ノードはすべて削除され、その子ノードは &color(coral){refChild} の前にまとめて追加されます
DOMの仕様では属性ノードを挿入しますことは許可されていませんが、歴史的な理由から QDom では許可されています
**子要素
***子要素を取得する
|QDomElement QDomNode::firstChildElement(const QString & &color(coral){tagName} = QString()) const|
指定したタグ名 &color(coral){tagName} を持つ最初に見つかった子要素を取得します
タグ名を指定しなかった場合は最初の子要素を返します
該当する子要素がない場合は&color(brown){nullノード}を返します
|QDomElement QDomNode::lastChildElement(const QString & &color(coral){tagName} = QString()) const|
指定したタグ名 &color(coral){tagName} を持つ最後に見つかった子要素を取得します
タグ名を指定しなかった場合は最後の子要素を返します
該当する子要素がない場合は&color(brown){nullノード}を返します
|QDomElement QDomNode::previousSiblingElement(const QString & &color(coral){tagName} = QString()) const|
指定したタグ名 &color(coral){tagName} を持つ前の兄弟ノードを取得します
タグ名を指定しなかった場合は前の兄弟ノードを取得します
該当する子要素がない場合は&color(brown){nullノード}を返します
|QDomElement QDomNode::nextSiblingElement(const QString & &color(coral){tagName} = QString()) const|
指定したタグ名 &color(coral){tagName} を持つ次の兄弟ノードを取得します
タグ名を指定しなかった場合は次の兄弟ノードを取得します
該当する子要素がない場合は&color(brown){nullノード}を返します
----
**属性
***属性を取得する
|QDomNamedNodeMap QDomNode::attributes() const|
すべての属性の名前付きノードマップを取得します
属性は [[QDomElement]] オブジェクトでのみ提供されます
***属性があるかチェックする
|bool QDomNode::hasAttributes() const|
本ノードが属性を持っている場合はtrue、そうでない場合はfalseを返します
**値
***値を取得する
|QString QDomNode::nodeValue() const|
本ノードの値を取得します
値の意味はノードのオブジェクトによって異なります
以下以外の子クラスでは空の文字列を返します
|QDomAttr|属性値|
|QDomCDATASection|CDATAセクションのコンテンツ|
|QDomComment|コメント|
|QDomProcessingInstruction|命令処理のデータ|
|QDomText|テキスト|
***値を設定する
void QDomNode::setNodeValue(const QString & &color(coral){v})|
本ノードに値を設定します
*メソッド
**クリアする
|void QDomNode::clear()|
本ノードを&color(brown){nullノード}にします
本ノードが所持しているコンテンツや型などは削除されます
**コピーする
|QDomNode QDomNode::cloneNode(bool &color(coral){deep} = true) const|
QDomNodeのディープコピーを作成します
&color(coral){deep}=trueの場合、子ノード以下もすべてコピーされます
&color(coral){deep}=falseの場合、本ノードのみコピーされます
**XML形式にして保存する
|void QDomNode::save(QTextStream & &color(coral){stream}, int &color(coral){indent}, EncodingPolicy &color(coral){encodingPolicy} = QDomNode::EncodingFromDocument) const|
ノード及びすべての子ノードをXML形式に変換し、&color(coral){stream} で指定したストリームに書き込みます
&color(coral){indent}ではノードのインデントに使用する空白の量を指定します
-保存する文字コード
|&color(coral){encodingPolicy}|本ノードのタイプ|挙動|
|&color(cadetblue){QDomNode::EncodingFromDocument}|[[QDomDocument]]|XML宣言で指定されているものを使用します。指定されていない場合はUTF8を使用します|
|&color(cadetblue){QDomNode::EncodingFromDocument}|[[QDomDocument]]以外|&color(coral){stream} で指定されている文字コードを使用します|
|&color(cadetblue){QDomNode::EncodingFromTextStream}|[[QDomDocument]]|&color(coral){stream} で指定されている文字コードを使用します|
|&color(cadetblue){QDomNode::EncodingFromTextStream}|[[QDomDocument]]以外|&color(coral){stream} で指定されている文字コードを使用します|
-文章に無効なXML文字及び与えられた文字コードでエンコードできない文字が含まれる場合の挙動は定義されていません
|enum QDomNode::EncodingPolicy|値|挙動|
|QDomNode::EncodingFromDocument|1|文章のエンコーディング形式を使用|
|QDomNode::EncodingFromTextStream|2|&color(cadetblue){QDomNode::QTextStream} て指定したエンコーディング形式を使用|
**オブジェクトのタイプを判定する
|bool QDomNode::isNull() const|
本ノードが&color(brown){nullノード}である場合はtrue、そうでない場合はfalseを返します
|bool QDomNode::isAttr() const|
本ノードが属性である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomAttr]] オブジェクトであることを示すものではありません
|bool QDomNode::isCDATASection() const|
本ノードがCDATAセクションである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomCDATASection]] オブジェクトを示すものではありません
|bool QDomNode::isCharacterData() const|
本ノードが文字データノードである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomCharacterData]] オブジェクトを示すものではありません
|bool QDomNode::isComment() const|
本ノードがコメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomComment]] オブジェクトを示すものではありません
|bool QDomNode::isDocument() const|
本ノードがドキュメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocument]] オブジェクトを示すものではありません
|bool QDomNode::isDocumentFragment() const|
本ノードがドキュメントフラグメントである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocumentFragment]] オブジェクトを示すものではありません
|bool QDomNode::isDocumentType() const|
本ノードが文章型である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomDocumentType]] オブジェクトを示すものではありません
|bool QDomNode::isElement() const|
本ノードが要素である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomElement]] オブジェクトを示すものではありません
|bool QDomNode::isEntity() const|
本ノードが実体である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomEntity]] オブジェクトを示すものではありません
|bool QDomNode::isEntityReference() const|
本ノードが実体参照である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomEntityReference]] オブジェクトを示すものではありません
|bool QDomNode::isNotation() const|
本ノードがNOTATIONである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomNotation]] オブジェクトを示すものではありません
|bool QDomNode::isProcessingInstruction() const|
本ノードが処理命令である場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomProcessingInstruction]] オブジェクトを示すものではありません
|bool QDomNode::isText() const|
本ノードがテキストである場合はtrue、そうでない場合はfalseを返します
trueを返した場合でも本ノードが [[QDomText]] オブジェクトを示すものではありません
**変換する
|QDomCDATASection QDomNode::toCDATASection() const|
QDomNode を子クラスである [[QDomCDATASection]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomCharacterData QDomNode::toCharacterData() const|
QDomNode を子クラスである [[QDomCharacterData]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomComment QDomNode::toComment() const|
QDomNode を子クラスである [[QDomComment]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomDocument QDomNode::toDocument() const|
QDomNode を子クラスである [[QDomDocument]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomDocumentFragment QDomNode::toDocumentFragment() const|
QDomNode を子クラスである [[QDomDocumentFragment]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomDocumentType QDomNode::toDocumentType() const|
QDomNode を子クラスである [[QDomDocumentType]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomElement QDomNode::toElement() const|
QDomNode を子クラスである [[QDomElement]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomEntity QDomNode::toEntity() const|
QDomNode を子クラスである [[QDomEntity]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomEntityReference QDomNode::toEntityReference() const|
QDomNode を子クラスである [[QDomEntityReference]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomNotation QDomNode::toNotation() const|
QDomNode を子クラスである [[QDomNotation]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomProcessingInstruction QDomNode::toProcessingInstruction() const|
QDomNode を子クラスである [[QDomProcessingInstruction]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomText QDomNode::toText() const|
QDomNode を子クラスである [[QDomText]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
|QDomAttr QDomNode::toAttr() const|
QDomNode を子クラスである [[QDomAttr]] オブジェクトに変換します
本ノードが属性でない場合、&color(brown){nullノード}を返します
**その他
|bool QDomNode::isSupported(const QString & &color(coral){feature}, const QString & &color(coral){version}) const|
機能 &color(coral){feature} がXMLDOMレベル &color(coral){version} でサポートされている場合はtrue、そうでない場合はfalseを返します
|int QDomNode::columnNumber() const|
QDomDocument::setContent()で自動生成されたノードの場合、対応したXML文章上の列番号を返します
それ以外の手段で生成されたノードの場合は-1を返します
|int QDomNode::lineNumber() const|
QDomDocument::setContent()で自動生成されたノードの場合、対応したXML文章上の行番号を返します
それ以外の手段で生成されたノードの場合は-1を返します
|void QDomNode::normalize()|
本ノード以下のすべてのノードを標準化します
連続した [[QDomText]] オブジェクトは一つに統合されます
**演算子
|bool QDomNode::operator!=(const QDomNode & &color(coral){n}) const|
|bool QDomNode::operator==(const QDomNode & &color(coral){n}) const|
|QDomNode & QDomNode::operator=(const QDomNode & &color(coral){n})|