为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言例程 正文

Quoted_Printable编码解码易语言源码

三叶资源网 2019-04-21 09:51:21 易语言例程 2601 ℃ 2 评论

Quoted_Printable编码解码易语言源码

@韦贝贝

.版本 2
.支持库 spec
.支持库 iconv

.程序集 窗口程序集_启动窗口, , ,   ' 本源码来自三叶资源网(www.sanye.cx)

.子程序 __启动窗口_创建完毕

调试输出 (编码_QP解码 (“=E8=B4=9D=E8=B4=9D=E5=90=A7”, 真))
调试输出 (编码_PQ编码 (“贝贝吧”, , 真))

.子程序 编码_QP解码, 文本型, 公开, Quoted_Printable解码
.参数 URL, 文本型
.参数 是否UTF8, 逻辑型, 可空, 先将文本串解码为文本,再从UTF8转成GBK编码
.局部变量 循环容器, 整数型
.局部变量 Len, 整数型
.局部变量 HEX, 文本型
.局部变量 目标, 文本型
.局部变量 H, 整数型
.局部变量 L, 整数型

Len = 取文本长度 (URL)
循环容器 = 1
HEX = “0123456789ABCDEF”
.判断循环首 (循环容器 ≤ Len)
    .判断开始 (取文本中间 (URL, 循环容器, 1) ≠ “=”)
        目标 = 目标 + 取文本中间 (URL, 循环容器, 1)
    .默认
        循环容器 = 循环容器 + 1
        H = 寻找文本 (HEX, 到大写 (取文本中间 (URL, 循环容器, 1)), , 假) - 1
        循环容器 = 循环容器 + 1
        L = 寻找文本 (HEX, 到大写 (取文本中间 (URL, 循环容器, 1)), , 假) - 1
        目标 = 目标 + 字符 (H × 16 + L)
    .判断结束
    循环容器 = 循环容器 + 1
.判断循环尾 ()
.如果真 (是否UTF8)  ' 本源码来自三叶资源网(www.sanye.cx)
    目标 = 到文本 (编码转换 (到字节集 (目标), #编码_UTF_8, #编码_GB2312, ))
.如果真结束
返回 (目标)


.子程序 编码_PQ编码, 文本型, 公开, Quoted_Printable编码
.参数 欲编码的文本, 文本型
.参数 不编码字母数字, 逻辑型, 可空, 不需要编码【字母数字.-】可以把此参数设置为真
.参数 是否UTF8, 逻辑型, 可空, 先把文本转换成UTF8编码,再编码成URL
.局部变量 结果文本, 文本型
.局部变量 字节集, 字节集, , ,   ' 本源码来自三叶资源网(www.sanye.cx)
.局部变量 计次, 整数型
.局部变量 temp, 文本型

.如果真 (欲编码的文本 = “”)
    返回 (“”)
.如果真结束

.判断开始 (是否UTF8)
    字节集 = 编码转换 (到字节集 (欲编码的文本), #编码_GB2312, #编码_UTF_8, )
.默认
    字节集 = 到字节集 (欲编码的文本)
.判断结束

.变量循环首 (1, 取字节集长度 (字节集), 1, 计次)
    temp = 取十六进制文本 (字节集 [计次])
    .如果真 (取文本长度 (temp) < 2)
        temp = “0” + temp
    .如果真结束
    ' 本源码来自三叶资源网(www.sanye.cx)
    .如果 (不编码字母数字)
        .判断开始 (字节集 [计次] > 44 且 字节集 [计次] < 58 且 字节集 [计次] ≠ 47)
            ' -.0-9
            结果文本 = 结果文本 + 字符 (字节集 [计次])

        .判断 (字节集 [计次] > 64 且 字节集 [计次] < 91)  ' A-Z
            结果文本 = 结果文本 + 字符 (字节集 [计次])

        .判断 (字节集 [计次] > 96 且 字节集 [计次] < 123)  ' a-z
            结果文本 = 结果文本 + 字符 (字节集 [计次])

        .默认
            结果文本 = 结果文本 + “=” + temp
        .判断结束

    .否则
        结果文本 = 结果文本 + “=” + temp
    .如果结束
    ' 本源码来自三叶资源网(www.sanye.cx)
.变量循环尾 ()
返回 (结果文本)
文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有2位网友发表了看法:

  • 果子

    果子  评论于 [2019-05-03 20:43:22]  回复

    quoted-printable+易语言

  • 易语言

    易语言  评论于 [2020-03-10 16:38:56]  回复

    易语言获取视频编码解码

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
圆形图像旋转获取控制台应用返回值下载器网页分析工具QQ手游授权登录采集源码注册表操作POST调试工具keep倒计时格式化高仿WPF界面易包缓动算法EWebsocketsocket5加密解密e2ee支持库隐藏进程小说阅读器
最新评论