每天拿出一分钟来学习,你的生命会更加精彩。

易语言高速url解码

发布:洪雨2020-3-15 20:26分类: 编程相关 标签: 易语言

有时候代码量非常的巨大,模块自带的url解码效率跟不上,于是上网找了个快速解码的写法。


.版本 2

.子程序 URL解码_加速, 文本型, 公开, 这个是特殊解码速度加快
.参数 URL, 文本型
.参数 是否UTF8, 逻辑型, 可空, 先将文本串解码为文本,再从UTF8转成GBK编码
.局部变量 i, 整数型
.局部变量 p, 整数型
.局部变量 len, 整数型
.局部变量 ret, 字节集

len = 取文本长度 (URL)
ret = 到字节集 (URL)
i = 1
p = 1
.判断循环首 (i ≤ len)
    .判断开始 (ret <i> ≠ 37)
        ret [p] = ret <i>
    .默认
        ret [p] = 位或 (左移 (StrToNum (ret [i + 1]), 4), StrToNum (ret [i + 2]))
        i = i + 2
    .判断结束
    p = p + 1
    i = i + 1
.判断循环尾 ()

.如果真 (p ≠ len)
    ret [p] = 0
.如果真结束
.如果真 (是否UTF8)
    ret = 到字节集 (编码_utf8到gb2312 (到文本 (ret)))
.如果真结束
返回 (到文本 (ret))

.子程序 StrToNum, 字节型, , 无视大小写的
.参数 t, 字节型

判断 (t ≤ 58)
返回 (t - 48)
判断 (t ≤ 90)
返回 (t - 65 + 10)
返回 (t - 97 + 10)
温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

已有 0/2584 人参与

欢迎使用手机扫描访问本站,还可以关注微信哦~