Qt进行urlEncode/urlDecode

本文参考Qt进行UrlEncode/UrlDecode(URL编码/解码)

现在说一说Qt中的两个类,一个是QByteArray,一个是QUrl,他们都有一对进行url编解码的函数

QByteArray QByteArray::​toPercentEncoding(const QByteArray & exclude = QByteArray(), const QByteArray & include = QByteArray(), char percent = '%') const

QByteArray QByteArray::​fromPercentEncoding(const QByteArray & input, char percent = '%') [static]


QString QUrl::​fromPercentEncoding(const QByteArray & input)

QByteArray 


QUrl::​toPercentEncoding(const QString & input, const QByteArray & exclude = QByteArray(), const QByteArray & include = QByteArray())  [static]


其中toPercentEncoding是进行url编码,fromPercentEncoding进行url解码,使用QUrl的url编解码函数,要求必须是完整的url地址,(若没有类似的http:// ,则会解码失败QUrl: QUrl::FullyDecoded is not permitted when reconstructing the full URL)既带http://   这样的http协议头,进行编解码时忽略http:// 。

而使用QByteArray的url编解码函数,则是进行全编解码,即会对 http://  这个协议头中的特殊字符编码。

你可能感兴趣的:(urldecode,qt,urlencode)