QString QgsNetworkContentFetcher::contentAsString() const { if ( !mContentLoaded || !mReply ) { return QString(); } QByteArray array = mReply->readAll(); //correctly encode reply as unicode QTextCodec* codec = codecForHtml( array ); return codec->toUnicode( array ); }
/*! \overload Tries to detect the encoding of the provided snippet of HTML in the given byte array, \a ba, by checking the BOM (Byte Order Mark) and the content-type meta header and returns a QTextCodec instance that is capable of decoding the html to unicode. If the codec cannot be detected, this overload returns a Latin-1 QTextCodec. */ QTextCodec *QTextCodec::codecForHtml(const QByteArray &ba) { return codecForHtml(ba, QTextCodec::codecForMib(/*Latin 1*/ 4)); }
/*! \overload Tries to detect the encoding of the provided snippet of HTML in the given byte array, \a ba, by checking the BOM (Byte Order Mark) and the content-type meta header and returns a QTextCodec instance that is capable of decoding the html to unicode. If the codec cannot be detected, this overload returns a Latin-1 QTextCodec. */ QTextCodec *QTextCodec::codecForHtml(const QByteArray &ba) { return codecForHtml(ba, QTextCodec::codecForName("ISO-8859-1")); }