Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在QT中解析HTML字符串_Html_Qt_Qt4 - Fatal编程技术网

在QT中解析HTML字符串

在QT中解析HTML字符串,html,qt,qt4,Html,Qt,Qt4,我想在Qt中解析HTML字符串 基本上我有QTextEdit对象(允许的富文本),当一些正文粘贴富文本(从MSWORD或类似内容复制)到QTextEdit时,我想要样式信息 我有自己的结构来存储样式信息,如下所示。在我从QTextEdit获取HTML后,谁能告诉我如何解析HTML? 有什么现有的方法吗 注意:我使用的是QT版本4.1.4(由于项目原因),所以我不能使用在4.1.4之后添加的QT类 提前谢谢 typedef struct styleset { QString font; Q

我想在Qt中解析HTML字符串

基本上我有
QTextEdit
对象(允许的富文本),当一些正文粘贴富文本(从MSWORD或类似内容复制)到
QTextEdit
时,我想要样式信息

我有自己的结构来存储样式信息,如下所示。在我从
QTextEdit
获取HTML后,谁能告诉我如何解析HTML? 有什么现有的方法吗

注意:我使用的是QT版本4.1.4(由于项目原因),所以我不能使用在4.1.4之后添加的QT类

提前谢谢

typedef struct styleset {
  QString font;
  QString size;
  bool bold;
  bool italics;
  bool underline;
  QString color;
}STYLESET;

我认为您可以创建一个
QDomDocument
,然后使用
QDomDocument::setContent(const QString&text,…)
设置其内容

Qt 4.1文件说明:

此函数用于读取XML文档 从字符串文本。因为文本是 已经是Unicode字符串,没有编码 检测完成


加载
QDomDocument
后,可以处理节点、属性等以填充结构。

使用
QTextCursor
迭代与texteditor关联的
QTextCursor
并使用
QTextCursor::charFormat()检索字符样式信息

请记住,MsWord Rtf格式与Qt富文本格式不同。QTextEdit无法识别Rtf。