Как я могу сделать QString html-escaped
Как мне избежать/дезинформировать QString, который содержит HTML?
т.е. showInBroswser(escaped(str)) == showInNotepad(str);
Ответы
Ответ 1
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
Ответ 2
Чтобы довести этот ответ со временем, Qt5.1 имеет QString:: toHtmlEscaped()
Ответ 3
Если вы хотите вставить обычный текст в QTextEdit, вы можете использовать:
void QTextEdit::insertPlainText ( const QString & text );
и, например, изменить цвет:
void QTextEdit::setTextColor ( const QColor & c );
И аналогично для шрифта или другого свойства текста...
Надеюсь, что это поможет.