QDomElementがあります。をデバッグしたい、つまりデバッグコンソールでプレーンテキストと見なしてください。 qDebug()で出力するにはQString形式にする必要がありますが、QDomElementやQDomNodeの変換方法は表示されません。QtXmlでQDomElementをデバッグする方法は?
ありがとう!
QDomElementがあります。をデバッグしたい、つまりデバッグコンソールでプレーンテキストと見なしてください。 qDebug()で出力するにはQString形式にする必要がありますが、QDomElementやQDomNodeの変換方法は表示されません。QtXmlでQDomElementをデバッグする方法は?
ありがとう!
DOM要素をQDebugにストリーミングする組み込み演算子はありません。
QDebug operator<<(QDebug dbg, const QDomNode& node)
{
QString s;
QTextStream str(&s, QIODevice::WriteOnly);
node.save(str, 2);
dbg << qPrintable(s);
return dbg;
}
使用QTextStream:
QTextStream lTS(stdout);
lTS << lMyDomElement;
はまあ私も自分の最善の策は、このQDomElement
はの一部であるQDomDocument
を利用することで、その場合には、似たような状況に遭遇して)十分だろう。だから私はあなたがQDomElement
にアクセスする直接の方法を得ることができないが、QDomDocumentを使用してそれを達成することができると言うでしょう。
この場合、QDomDocument
が最新のQDomElement
で更新されていることを確認してから、QDomDocument::toString()
を使用すると、ドキュメント全体がQStringとして返されます。
ここにはQt referenceがあります。
これが役に立ちます。
それは戦略ですが、より単純なものが推奨されるはずです、IMHO。とにかくありがとう。 – moala
QDebugの前方宣言のみを使用して宣言するために、QDebugが参照として使用されるように答えを編集しました。あなたの答えは完璧に私の質問に答えるので、私はあなたの答えを私の代わりに選ぶでしょう。ありがとう!! – moala