如何使QString进行html转义

时间:2013-01-05 15:17:35

标签: c++ html qt html-escape

如何转义/清理包含HTML的QString?

即。 showInBroswser(escaped(str)) == showInNotepad(str);

3 个答案:

答案 0 :(得分:43)

Qt 5

使用QString::toHtmlEscaped()

QString src;
Qstring html = src.toHtmlEscaped();
showInBrowser(html) == showInNotepad(str);

参考:http://doc.qt.io/qt-5/qstring.html#toHtmlEscaped

Qt 4

使用Qt::escape

#include <QtGui/qtextdocument.h>

QString src;
Qstring html = Qt::escape(src);
showInBrowser(html) == showInNotepad(str);

参考:http://doc.qt.io/qt-4.8/qt.html#escape

答案 1 :(得分:8)

为了使这个答案与时俱进,Qt 5.1有QString::toHtmlEscaped()

答案 2 :(得分:-2)

如果要将纯文本插入QTextEdit,可以使用:

void QTextEdit::insertPlainText ( const QString & text );

,例如,修改颜色:

void QTextEdit::setTextColor ( const QColor & c ); 

类似于文字的字体或其他属性...

希望有所帮助。