QDomDocument
XMLドキュメント全体を表します
DOMツリーのルートノードにあたります
継承元
公式リファレンス
基本
コンストラクタ
QDomDocument::QDomDocument() |
QDomDocument::QDomDocument(const QString & name) |
文書型の名前が name であるドキュメントを作成する
QDomDocument::QDomDocument(const QDomDocumentType & doctype) |
文書型が doctype であるドキュメントを作成する
コピーコンストラクタ
QDomDocument::QDomDocument(const QDomDocument & x) |
オブジェクトはシャローコピーされます
ディープコピーをする場合は cloneNode() を使用します
デストラクタ
QDomDocument::~QDomDocument() |
型を取得する
QDomNode::NodeType QDomElement::nodeType() const |
ノードタイプ( ElementNode )を取得します
演算子
QDomDocument & QDomDocument::operator=(const QDomDocument & x) |
ノードを生成する
QDomAttr QDomDocument::createAttribute(const QString & name) |
属性名
name である
QDomAttr オブジェクトを生成します
属性名がXMLで許可された値でない場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomAttr QDomDocument::createAttributeNS(const QString & nsURI , const QString & qName ) |
名前空間URI
nsURI 及び QName
qName である
QDomAttr オブジェクトを生成します
この関数は
qName の値に応じて
QDomNode::prefix() 及び
QDomNode::localName() に適切な値を設定します
名前空間URI及びQNameがXMLで許可された値でない場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomCDATASection QDomDocument::createCDATASection(const QString & value ) |
値
value の
QDomCDATASection オブジェクトを作成します
CDATAセクションに許可されない文字が含まれる場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomComment QDomDocument::createComment(const QString & value ) |
値
value の
QDomComment オブジェクトを作成します
コメントに許可されない文字が含まれる場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomDocumentFragment QDomDocument::createDocumentFragment() |
QDomElement QDomDocument::createElement(const QString & tagName) |
タグ名
tagName である
QDomElement オブジェクトを生成します
タグ名がXMLで許可された値でない場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomElement QDomDocument::createElementNS(const QString & nsURI , const QString & qName ) |
名前空間URI
nsURI 及び QName
qName である
QDomElement オブジェクトを生成します
qName が空の文字列の場合は
nullノードを返します
QDomEntityReference QDomDocument::createEntityReference(const QString & name) |
実体参照名
name である
QDomEntityReference オブジェクトを生成します
実体参照名がXMLで許可された値でない場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomProcessingInstruction QDomDocument::createProcessingInstruction(const QString & target, const QString & data ) |
ターゲット
target 及びデータ
data である
QDomProcessingInstruction オブジェクトを生成します
target がXMLで許可された値でない場合、
data が処理命令に許可されていない文字を含む場合の挙動は
QDomImplementation::InvalidDataPolicy に従います
QDomText QDomDocument::createTextNode(const QString & value ) |
値 value のテキストノードを生成します
XML文章に文字データとして保持することができない文字が含まれる場合の挙動は QDomImplementation::InvalidDataPolicy に従います
情報を取得する
QDomDocumentType QDomDocument::doctype() const |
本ドキュメントの文章型を取得します
QDomElement QDomDocument::documentElement() const |
本ドキュメントのルート要素を取得します
QDomElement QDomDocument::elementById(const QString & elementId ) |
ID elementId を持った要素を検索し、取得します
該当する要素が存在しない場合はnullノードを返します
QDomNodeList QDomDocument::elementsByTagName(const QString & tagname ) const |
本ドキュメント内でタグ名 tagname を持った要素を検索し、ノードリストで取得します
ノードリストの順番は見つかった順番です
QDomNodeList QDomDocument::elementsByTagNameNS(const QString & nsURI , const QString & localName ) |
本ドキュメント内で名前空間URI nsURI 及びローカル名 localName を持った要素を検索し、ノードリストで取得します
ノードリストの順番は見つかった順番です
QDomImplementation QDomDocument::implementation() const |
QDomNode::NodeType QDomDocument::nodeType() const |
本ノードのノードタイプ( QDomDocument )オブジェクトを取得します
XMLドキュメントからコンテンツを生成する
bool QDomDocument::setContent(const QByteArray & data , bool namespaceProcessing , QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
バイトデータからDOMツリーを生成する
XML宣言で指定されているものを文章の文字コードとして使用する
namespaceProcessing がtrueである場合、パーサーはXMLドキュメントをを分析する際に、名前空間を認識して名前空間URI、接頭辞及びローカル名に適切な値を設定する
namespaceProcessing がfalseである場合、パーサーはXMLドキュメントをを分析する際に、名前空間の処理を行わない
パーサーエラーが発生した場合、この関数はfalseを返し、以下のポインタがnullでない場合はエラー情報を設定する
errorMsg |
エラー内容 |
errorLine |
エラーが発生したXMLドキュメントの行番号 |
errorColumn |
エラーが発生したXMLドキュメントの列番号 |
エラーが発生しなかった場合はtrueを返します
エラーメッセージの種類についてはQXmlParseExceptionクラスで説明しています
これらのエラーメッセージをアプリケーションで表示した場合は、明示的に翻訳しない限りは英語で表示される
以下オーバーロード
引数が4つの関数は名前空間の解析を行わない
bool QDomDocument::setContent(const QString & text, bool namespaceProcessing , QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
bool QDomDocument::setContent(const QString & text, QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
QStringからDOMツリーを生成する
既にUnicode文字なので文字コードの検出は行われない
bool QDomDocument::setContent(QIODevice * dev, bool namespaceProcessing , QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
bool QDomDocument::setContent(QIODevice * dev, QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
QIODeviceからDOMツリーを生成する
文字コードはQIODeviceオブジェクトで指定されている
bool QDomDocument::setContent(QXmlInputSource * source, bool namespaceProcessing , QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
bool QDomDocument::setContent(QXmlInputSource * source, QXmlReader * reader, QString * errorMsg = 0, int * errorLine = 0, int * errorColumn = 0) |
QXmlInputSourceからDOMツリーを生成する
文字コードはQXmlInputSourceオブジェクトで指定されている
DOMツリーからXMLドキュメントを生成する
QByteArray QDomDocument::toByteArray(int indent = 1) const |
分析済みの文章をテキストに戻し、UTF-8エンコーディングのQByteArrayを返す
indent でインデントのサブ要素の空白の量を指定
QString QDomDocument::toString(int indent = 1) const |
分析済みの文章をテキストに戻し、QStringで返す
indent でインデントのサブ要素の空白の量を指定
ノードをインポートする
QDomNode QDomDocument::importNode(const QDomNode & importedNode , bool deep ) |
他のドキュメントからこのドキュメントにノードをインポートする
インポートされたノードはコピー元のドキュメントにも残る
この関数はこのドキュメントに所属するインポートされたノードを返す
返されるノードは親は設定されていない
QDomDocumentノードやQDomDocumentTypeノードはインポートすることができず、これらのノードを渡した場合、返り値はnullとなる
depp=trueとすれば渡されたノードだけでなく、その子ツリーもすべてコピーされる
deep =falseの場合、渡されたノードのみインポートされる
deep 引数はQDomAttrノードやQDomEntityReferenceノードには効果がない
QDomAttrは常にインポートされ、QDomEntityReferenceノードはインポートされることがないからである
最終更新:2014年05月29日 00:14