- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在研究 MIME 类型检测器,需要根据 namespace 和根标记名称拆分各种 XML 文件。我正在为 XML 使用 Qt DOM API:QDomDocument
、QDomNode
、QDomElement
等。我的测试 xml(非常简单):
<?xml version = '1.0' encoding = 'KOI8-R'?>
<root xmlns="http://www.w3.org/1999/xhtml">
</root>
我的 C++/Qt 代码用于加载 XML 并理解它的命名空间和根标记:
// _d is QIODevice object, XML data source
QDomDocument doc;
if (!doc.setContent (_d))
{
qWarning () << "QDomDocument::setContent has failed on file";
_d->close ();
continue;
}
QDomElement root_item = doc.documentElement ();
qDebug () << "Namespace URI:" << root_item.namespaceURI () << root_item.localName () << root_item.prefix ();
在输出中我只得到三个空字符串,包括命名空间一。但我期望 "http://www.w3.org/1999/xhtml"
。我做错了什么吗?
附言root_item.tagName()
按预期显示 root
,即 XML 文件已正确解析。
最佳答案
大声笑,我只需要添加 doc.setContent (_d, true)
,其中第二个参数启用命名空间处理。希望这对其他人有用。
关于c++ - QDomNode namespace 检测的错误工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20468089/
我有 QDomNode 对象,我需要获取其中数据的 html 表示形式。我找到了一个方法 QDomNode::save( QTextStream & str, int indent ) : Write
我正在研究 MIME 类型检测器,需要根据 namespace 和根标记名称拆分各种 XML 文件。我正在为 XML 使用 Qt DOM API:QDomDocument、QDomNode、QDomE
所以我正在研究简单的 xml 阅读器,我想在树上显示 xml。 所以为了获得关于树上的哪个项目是 xml 文件中的哪个项目的信息,我制作了一个 QMap: QMap connectDomNodeAnd
QDomNode.clear() 函数应该删除相应的 XML 标记的值。我正在使用 Qt 4.7。 这里是 XML QSQLITE /D
我是一名优秀的程序员,十分优秀!