pub fun encoded_len(src_len: usize) usize;
返回编码 src_len 字节所需的缓冲区大小(包含空终止符)
src_len:源字节数 ret:所需的目标缓冲区大小
pub fun decoded_len(src_len: usize) usize;
返回长度为 src_len 的 base64 字符串的最大解码字节数
src_len:base64 字符串的长度 ret:最大解码字节数
pub fun encode(src: *u8, src_len: usize, dst: *u8, dst_len: usize) usize;
将字节编码为带有填充的标准 base64
src:指向源字节的指针 src_len:源字节数 dst:指向目标缓冲区的指针 dst_len:目标缓冲区的大小(必须 >= encoded_len(src_len)) ret:已写入的字节数(不计入空终止符),如果 dst 太小则为 0
pub fun encode_url(src: *u8, src_len: usize, dst: *u8, dst_len: usize) usize;
将字节编码为不带填充的 URL 安全 base64
src:指向源字节的指针 src_len:源字节数 dst:指向目标缓冲区的指针 dst_len:目标缓冲区的大小(必须 >= encoded_len(src_len)) ret:已写入的字节数(不计入空终止符),如果 dst 太小则为 0
pub fun decode(src: *u8, src_len: usize, dst: *u8, dst_len: usize) usize;
将 base64 字符串解码为字节
同时处理标准和 URL 安全的字母表,以及填充字符。
src:指向 base64 字符串的指针 src_len:base64 字符串的长度 dst:指向目标缓冲区的指针 dst_len:目标缓冲区的大小(必须 >= decoded_len(src_len)) ret:已写入的字节数,在输入无效或 dst 太小时为 0