- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在一个 HTML 文件中有几个不同类的 div,如下所示:
<div class='A'>...</div>
<div class='B'>...</div>
<div class='C'>...</div>
我有一个 Qt (4.7) 程序,我需要能够根据类从中获取特定的 div。我需要在这个程序中使用 QDomDocument。我从文档中知道该类有一个函数 elementById()
,但我不能让它与类一起使用,只能使用 id。这不是制作的 HTML 文件或任何东西,所以我无法控制它是类还是 ID。有没有办法做到这一点我想念的?谢谢!
最佳答案
看起来你需要这样的东西:
#include <QDomDocument>
#include <QDomElement>
#include <QDomNodeList>
#include <QDomAttr>
#include <QFile>
#include <QDebug>
int main()
{
QDomDocument doc("mydocument");
QFile file("mydocument.xml");
if (!file.open(QIODevice::ReadOnly))
return 1;
if (!doc.setContent(&file)) {
file.close();
return 1;
}
file.close();
QDomNodeList divNodeList = doc.elementsByTagName("div");
for (int i = 0; i < divNodeList.size(); ++i) {
QDomElement domElement = divNodeList.at(i).toElement();
QDomAttr attribute = domElement.attributeNode("class");
qDebug() << "Attribute value" << attribute.value();
if (attribute.value() == "A")
qDebug() << "Found A";
}
return 0;
}
g++ -Wall -fPIC -I/usr/include/qt -I/usr/include/qt/QtCore -I/usr/include/qt/QtXml -lQt5Xml -lQt5Core main.cpp && ./a.out
关于html - QDomDocument 按类获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20686185/
我在一个 HTML 文件中有几个不同类的 div,如下所示: ... ... ... 我有一个 Qt (4.7) 程序,我需要能够根据类从中获取特定的 div。我需要在这个程序中使用 QDomDocu
很难说出这里问的是什么。这个问题是模棱两可的、模糊的、不完整的、过于宽泛的或修辞的,无法以目前的形式得到合理的回答。如需帮助澄清这个问题以便重新打开它,visit the help center .
我目前正在研究 QDomDocument,我想实现几个功能,但我只想使用一个 QDomDocument。所以要在工作时做到这一点,我有时需要返回 Root 值。 例如,我有一个这样的 XML;
我是新手,我正在创建一个 XML 文件,我需要在其中提供 CRC 值以在服务器上进行交叉检查。为此,我需要 QDomDocument 数据作为文本。为此,我首先使用伪造的 CRC 值创建 XML 文件
我的问题如下: 我打开一个 XML 文件: A 212 Test1 & Test2 不能像下面这样设置内容: xmlFile->open(QIODevice::ReadOnly|QI
我将加载多个 XML 文件,每个文件都放入一个 QDomDocument 中,然后使用一个 QMap 将一个标识字符串与每个文档相关联。我应该在 map 中存储 QDomDocument 还是指向 Q
A 收到这样的字符串: # 998.40 49920 我想使用 QDomDocument 通过索引获取参数子节点的值(我想在示例中提取字符串“# 998
我有一个 XML 文档,其中的一个元素已被注释掉。如何在此示例应用程序中跳过该项目? #include #include int main(int argc, char *argv[]) {
我正在用 XML 做一些事情,现在我很困惑。此代码完美运行: QDomElement new_item = doc.createElement(name); new_item.setA
我想在 xml 模型中创建 QDomDocument 的深层拷贝,以便用户以后可以将文档恢复到其原始状态。 QDomDocument documentation说这可以通过使用 cloneNode()
我有 xmpp iq,我从 QByteArray 加载到 QDomDocument,但我需要它作为 QDomElement You need an x:data capable cli
我在尝试将 setContent() 用于 QDomDocument 对象时遇到问题.. 代码如下: QFile f("database.xml"); if(!f.open(QFile::ReadOn
在 QWebView 中我可以执行 javascript 代码。但是 QWebView 不适合在线程中运行,我想将执行转移到线程中。 有没有办法在 QDomDocument 中执行 javascrip
编辑 Bounty 转到一个体面的 FOSS 许可函数,它将进行转换。 我有一个 QDomDocument,它是 HTML,我想在一个小部件中呈现它。 有很多 QtWebkit 类,但它们似乎没有使用
如何从QString创建QDomDocument,其中包含很多XML节点? 我知道一种方法 - setContent 方法。但这不是更好的方法 - 如果我需要从内容类似于 的字符串创建 XML
我被 C# 和它在 System.Xml 命名空间中的 XML 操作类宠坏了(当然是烂透了)。我可以将 XML 文件加载到 XmlDocument 中。我可以使用 XmlNode.SelectNode
我在 Qt 中使用 Botan 库进行加密。我让它工作到我可以从一个文件加密和解密到另一个文件的地方,但我试图改变它以从一个文件加密到一个 QDomDocument(加密文件将只是一个 XML 文件)
我正在使用 Qt 读取 C++ 代码中的 Xml 文件。我完全下载并安装了Qt5。现在,我将这一行作为标题添加到我的 C++ 代码中: #include 即使我在命令提示符中添加它的路径: expo
长话短说,我有一个程序使用 QDomDocument 类创建一个 xml 文件,然后使用 save() 函数将其保存到文本流对象。所以基本上是 QDomDocument somedoc; //crea
我的问题是,我有一个大型 XML 样式的文件,表示为 QDomDocument,我需要访问 XML 中多个位置的某些标签 我的 XML 看起来像这样 Mat_1 1
我是一名优秀的程序员,十分优秀!