如何逃避/消毒包含HTML为QString?
即showInBroswser(escaped(str)) == showInNotepad(str);
如何逃避/消毒包含HTML为QString?
即showInBroswser(escaped(str)) == showInNotepad(str);
使用QString::toHtmlEscaped()
QString src;
Qstring html = src.toHtmlEscaped();
showInBrowser(html) == showInNotepad(str);
参考: http://doc.qt.io/qt-5/qstring.html#toHtmlEscaped
使用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
只要把这个答案与时并进,QT 5.1具有QString::toHtmlEscaped()
如果要插入纯文本,您可以使用一个QTextEdit:
void QTextEdit::insertPlainText ( const QString & text );
并且,例如,为了修改颜色:
void QTextEdit::setTextColor ( const QColor & c );
而类似的字体或文本的其他财产...
希望帮助。