qt 中百分号编码

QString token;

token.toUtf8().toPercentEncoding();

toPercentEncoding() 函数 

 toPercentEncoding 是用于将字符串中的特殊字符转换为百分号编码格式的一个方法。这种编码方式常用于 URL 中,以确保特殊字符(如空格、斜杠等)不会引起误解。它的作用是将这些字符转换为由百分号(%)加上两个十六进制数字组成的格式,例如空格会被编码为 %20

注意的地方 :

转换百分号编码后,  如果后面还有arg()函数, 会把 %* 清除。

QString token="+a+b”;

QString url = QString("www.abc.com?token=%1").arg(token.toUtf8().toPercentEncoding());

这个方式url里的%2B是正常存在的。

QString url = QString("www.abc.com?token=%1&lang=%2").arg(token.toUtf8().toPercentEncoding().arg("zh");

这个方式url里的%2B是不在的。%2直接被替换了

解决方法将有百分号编码的参数放在最后就行。

QString url = QString("www.abc.com?lang=%1&token=%2").arg("zh").arg(token.toUtf8().toPercentEncoding();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值