如何在QtXml中调试QDomElement?
我有一个QDomElement,我想调试它,即在调试控制台中将其视为纯文本。为了使用 qDebug() 输出它,它需要采用 QString 格式,但是我没有看到任何来自 QDomElement 或 QDomNode 的转换方法。
有什么想法吗?谢谢!
I've got a QDomElement, and I would like to debug it, i.e. see it as plain text in debug console. In order to output it with qDebug(), it needs to be in QString format, however I don't see any conversion method from a QDomElement nor a QDomNode.
Any idea? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
如果您
#include
QDebug 将充当 TextStream 本身。即qDebug()<< lMyDomElement; 就足够了)
if you
#include <QDebug>
QDebug would act as TextStream itself.i.e.
qDebug()<< lMyDomElement;
would be enough)我也遇到过类似的情况,在这种情况下,我最好的选择是利用
QDomElement
所属的QDomDocument
。所以我想说你无法直接访问QDomElement
,但你可以使用QDomDocument 来实现。为此,您需要确保您的
QDomDocument
使用最新的QDomElement
进行更新,然后使用QDomDocument::toString()
这将返回您整个文档作为 QString。这是Qt 参考。
希望这有帮助。
Well I also come across similar situations, in that case my best bet is to make use of the
QDomDocument
which thisQDomElement
is part of. So I would say you cannot get a direct way to access theQDomElement
but you can achieve that using the QDomDocument.For this you need to ensure that your
QDomDocument
gets updated with the recentQDomElement
and then useQDomDocument::toString()
which would return you the whole document as a QString.Here is the Qt reference.
Hope this helps.
没有用于将 DOM 元素流式传输到 QDebug 的内置运算符。你可以很容易地写一个,比如:
There is no built-in operator for streaming DOM elements to QDebug. You could write one easily enough, something like:
使用QTextStream:
Use QTextStream: