|

模块版本:11.1.0
所用系统:win10
命令名称:编码_BASE64解码()
BUG描述:代码写法需要优化,原先10MB文件编码后进行解码需要十来分钟左右,我能力有限优化后也要4秒左右
api版本速度很快,编码解码都是毫秒级。
我的联系QQ:455930188、2700433330
@项目部004
|
编码_BASE64解码 | 字节集 | | |
编码文本 | 文本型 | | | | 去除右边空白字节集 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_字节集长度 | 整数型 | | | 局_整倍数 | 整数型 | | | 局_三字节组 | 字节集 | | | 局_四字节组 | 字节集 | | | 局_编码值 | 整数型 | | | X | 整数型 | | | N | 整数型 | | | 局_二进制数据 | 字节集 | | | 字节集 | 字节集 | | | 字符集 | 字节集 | | | 指针 | 整数型 | | |
字节集 = 到字节集 (编码文本 )字节集 = 子字节集替换 (字节集, 到字节集 (“ ”), { }, , )字节集 = 子字节集替换 (字节集, 到字节集 ( #换行符 ), { }, , )局_字节集长度 = 取字节集长度 (字节集 )局_整倍数 = 局_字节集长度 \ 4 如果真 (局_字节集长度 % 4 ≠ 0 ) 局_整倍数 = 局_整倍数 + 1  字符集 = 到字节集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”)局_三字节组 = 取空白字节集 (3 )局_四字节组 = 取空白字节集 (4 )指针 = 申请内存 (局_整倍数 × 3, 真) 计次循环首 (局_整倍数, X ) 计次循环首 (4, N )  局_四字节组 [N ] = 字节集 [ (X - 1 ) × 4 + N ]  计次循环首 (64, 局_编码值 )    如果真 (字符集 [局_编码值 ] = 局_四字节组 [N ])   跳出循环 ()      计次循环尾 ()  如果真 (局_编码值 > 64 )  跳出循环 () 局_四字节组 [N] = 局_编码值 - 1 计次循环尾 () 局_三字节组 [1 ] = 位或 (局_四字节组 [1 ] × 4, 局_四字节组 [2 ] ÷ 16 ) 局_三字节组 [2 ] = 位或 (局_四字节组 [2 ] × 16, 局_四字节组 [3 ] ÷ 4 ) 局_三字节组 [3 ] = 位或 (局_四字节组 [3 ] × 64, 局_四字节组 [4 ]) 写到内存 (局_三字节组, 指针, ) 指针 = 指针 + 3 计次循环尾 () 如果真 (N < 5 )  N = 5 - N  局_二进制数据 = 指针到字节集 (指针 - 局_整倍数 × 3, 局_整倍数 × 3 - N ) 如果真 (去除右边空白字节集 ) 局_二进制数据 = 删除Unicode结尾空白字节 (局_二进制数据, 假)释放内存 (指针)返回 (局_二进制数据 )
|
评分
-
查看全部评分
|