QUrl提取与写入参数
QUrl url("www.baidu.com?a=666&b=888"); url.addQueryItem("c","123456"); qDebug()<<url.queryItemValue("b"); qDebug()<<url.toString();
转自:https://blog.csdn.net/Think88666/article/details/84066915编码
字符 - URL编码值url
空格 - %20
" - %22
# - %23
% - %25
& - %26
( - %28
) - %29
+ - %2B
, - %2C
/ - %2F
: - %3A
; - %3B
< - %3C
= - %3D
> - %3E
? - %3F
@ - %40
\ - %5C
| - %7C spa
URL特殊字符转义,URL中一些字符的特殊含义,基本编码规则以下:.net
一、空格换成加号(+)
二、正斜杠(/)分隔目录和子目录
三、问号(?)分隔URL和查询
四、百分号(%)制定特殊字符
五、#号指定书签
六、&号分隔参数
code
若是须要在URL中用到,须要将这些特殊字符换成相应的十六进制的值
+ %2B
/ %2F
? %3F
% %25
# %23
& %26blog
QUrl 为咱们提供了不少的便利方法,其中对字符串进行 URL 格式化编码的方法文档
QByteArray QUrl::toPercentEncoding(const QString & input, const QByteArray & exclude = QByteArray(), const QByteArray & include = QByteArray()) [static]
就是一个很方便的方法,在这个方法中,咱们能够简单地对字符串进行编码,也能够经过指定第二个参数 exclude 指定哪些字符不须要编码,以及指定第三个参数 include 强制将某些字符进行编码。字符串
下面是 Qt 文档中的一个实例:input
QByteArray ba = QUrl::toPercentEncoding("{a fishy string?}", "{}", "s"); qDebug(ba.constData()); // prints "{a fi%73hy %73tring%3F}"
下面是一个简单的使用实例:string
#include <QCoreApplication> #include <QDebug> #include <QUrl> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); QString testString("Hello World!"); qDebug() << QUrl::toPercentEncoding(testString); return a.exec(); }
其实际输出结果为:
转自:https://www.jianshu.com/p/f4908911e8d8
url中的中文字符,后期再讨论