概述
Base64解码
.版本 2 .程序集 程序集1 .子程序 Base64解码, 字节集, 公开 .参数 原文, 字节集 .局部变量 码表, 字节集 .局部变量 位置码表, 字节型, , "256" .局部变量 结果, 字节集 .局部变量 原文长度, 整数型 .局部变量 补码, 整数型 .局部变量 i, 整数型 .局部变量 四字节数据, 字节型, , "4" .局部变量 j, 整数型 原文长度 = 取字节集长度 (原文) .如果真 (原文长度 = 0) 返回 ({ }) .如果真结束 码表 = { 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 43, 47 } .计次循环首 (64, i) 位置码表 [码表 [i]] = i - 1 .计次循环尾 () 补码 = 0 .判断开始 (取字节集右边 (原文, 2) = { 61, 61 }) 补码 = 2 .判断 (取字节集右边 (原文, 1) = { 61 }) 补码 = 1 .默认 .判断结束 结果 = 取空白字节集 (原文长度 ÷ 4 × 3) j = 1 .变量循环首 (1, 原文长度 - 3, 4, i) 四字节数据 [1] = 位置码表 [原文 [i]] 四字节数据 [2] = 位置码表 [原文 [i + 1]] 四字节数据 [3] = 位置码表 [原文 [i + 2]] 四字节数据 [4] = 位置码表 [原文 [i + 3]] 结果 [j] = 左移 (四字节数据 [1], 2) + 右移 (四字节数据 [2], 4) 结果 [j + 1] = 左移 (四字节数据 [2], 4) + 右移 (四字节数据 [3], 2) 结果 [j + 2] = 左移 (四字节数据 [3], 6) + 四字节数据 [4] j = j + 3 .变量循环尾 () .如果真 (补码 > 0) 结果 = 取字节集左边 (结果, 取字节集长度 (结果) - 补码) .如果真结束 返回 (结果) .子程序 Base64编码, 字节集, 公开 .参数 原文, 字节集 .局部变量 余数, 整数型 .局部变量 三字节数据, 字节型, , "3" .局部变量 码表, 字节集 .局部变量 len_x, 整数型 .局部变量 len_y, 整数型 .局部变量 结果, 字节集 .局部变量 i, 整数型 .局部变量 k, 整数型 len_x = 取字节集长度 (原文) .如果真 (len_x < 1) 返回 ({ }) .如果真结束 余数 = len_x % 3 .如果真 (余数 > 0) 原文 = 原文 + 取空白字节集 (3 - 余数) len_x = len_x + 3 - 余数 .如果真结束 len_y = len_x × 4 ÷ 3 结果 = 取空白字节集 (len_y) i = 1 码表 = { 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 43, 47 } .变量循环首 (1, len_x, 3, k) 三字节数据 [1] = 原文 [k] 三字节数据 [2] = 原文 [k + 1] 三字节数据 [3] = 原文 [k + 2] 结果 [i] = 码表 [右移 (三字节数据 [1], 2) + 1] 结果 [i + 1] = 码表 [左移 (位与 (三字节数据 [1], 3), 4) + 右移 (三字节数据 [2], 4) + 1] 结果 [i + 2] = 码表 [左移 (位与 (三字节数据 [2], 15), 2) + 右移 (三字节数据 [3], 6) + 1] 结果 [i + 3] = 码表 [位与 (三字节数据 [3], 63) + 1] i = i + 4 .变量循环尾 () .判断开始 (余数 = 2) 结果 [len_y] = 61 .判断 (余数 = 1) 结果 [len_y] = 61 结果 [len_y - 1] = 61 .默认 .判断结束 返回 (结果)
下载地址解析转换
.版本 2 .支持库 spec .程序集 窗口程序集1 .子程序 _地址转换_被单击 .判断开始 (地址编辑框.内容 ≠ “”) 地址编辑框.内容 = 删首尾空 (地址编辑框.内容) .判断开始 (取文本左边 (地址编辑框.内容, 10) = “thunder://”) 原始地址编辑框.内容 = 处理子程序 (1) .判断 (取文本左边 (地址编辑框.内容, 11) = “Flashget://”) 原始地址编辑框.内容 = 处理子程序 (2) .判断 (取文本左边 (地址编辑框.内容, 7) = “qqdl://”) 原始地址编辑框.内容 = 处理子程序 (3) .默认 原始地址编辑框.内容 = 地址编辑框.内容 .判断结束 原始地址转换 () .默认 信息框 (“请在输入需要转换的地址”, 48, “地址栏为空”) .判断结束 .子程序 原始地址转换 迅雷地址编辑框.内容 = 返回迅雷 () flashget编辑框.内容 = 返回flashget () 旋风地址编辑框.内容 = 返回旋风 () .子程序 处理子程序, 文本型 .参数 标识 .局部变量 文本, 文本型 .局部变量 文本1, 文本型 .局部变量 文本2, 文本型 .局部变量 文本3, 文本型 .局部变量 id, 整数型 .判断开始 (标识 = 1) 文本 = 子文本替换 (地址编辑框.内容, “thunder://”, , , 2, 假) 文本 = 子文本替换 (文本, “/”, , , , 真) 文本 = 到文本 (Base64解码 (到字节集 (文本))) 文本 = 子文本替换 (文本, “AA”, , , , 真) 文本 = 子文本替换 (文本, “ZZ”, , , , 真) .判断 (标识 = 2) 文本 = 子文本替换 (地址编辑框.内容, “Flashget://”, , , 1, 真) id = 寻找文本 (文本, “&”, , 假) .判断开始 (id ≠ -1) 文本 = 取文本左边 (文本, id - 1) 调试输出 (文本) .默认 .判断结束 文本 = 到文本 (Base64解码 (到字节集 (文本))) 文本 = 子文本替换 (文本, “[FLASHGET]”, , , 2, 假) .判断 (标识 = 3) 文本 = 子文本替换 (地址编辑框.内容, “qqdl://”, , , 2, 假) 文本 = 到文本 (Base64解码 (到字节集 (文本))) .默认 .判断结束 返回 (文本) .子程序 返回迅雷, 文本型 .局部变量 文本, 文本型 文本 = 原始地址编辑框.内容 文本 = “AA” + 文本 + “ZZ” 文本 = “thunder://” + 到文本 (Base64编码 (到字节集 (文本))) 返回 (文本) .子程序 返回flashget, 文本型 .局部变量 文本, 文本型 文本 = 原始地址编辑框.内容 文本 = “[FLASHGET]” + 文本 + “[FLASHGET]” 文本 = “Flashget://” + 到文本 (Base64编码 (到字节集 (文本))) + “&force” 返回 (文本) .子程序 返回旋风, 文本型 .局部变量 文本, 文本型 文本 = 原始地址编辑框.内容 文本 = “qqdl://” + 到文本 (Base64编码 (到字节集 (文本))) 返回 (文本) .子程序 _清空地址_被单击 连续赋值 (“”, 原始地址编辑框.内容, 迅雷地址编辑框.内容, flashget编辑框.内容, 旋风地址编辑框.内容, 地址编辑框.内容)
运行结果:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对靠谱客的支持。如果你想了解更多相关内容请查看下面相关链接
最后
以上就是漂亮微笑为你收集整理的易语言将下载地址解析转换成迅雷快车旋风的方法的全部内容,希望文章能够帮你解决易语言将下载地址解析转换成迅雷快车旋风的方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复