对base128进行编码和解码。
base128的Python项目详细描述
如果从命令行调用,则将二进制文件编码为base128。
如果从python导入,则提供base128类来执行此操作。
base128的实例可用于转换为base128编码。
encoding:python包位数组用于每隔8位插入0位数据。BitArray负责移位位,为
新位腾出空间。这是分块做的。
对于大小
不等于7的倍数的块,mod 8位的长度可以大于零。因此,“chunkSize”必须是7的倍数。
即使“chunkSize”是7的倍数,最后一个块在编码后也可能需要填充以达到8的倍数。
填充量可以表示为原始数据的函数
长度mod``chunkSize`(``mod chunk``)。`` modchunk``作为
附加字节添加到编码末尾。要使此字节也以128为基数,我们需要“chunksize”`<;=128。
使用bytes``chars``生成的块将是整数列表
,并且可能仍需要键入字节以进行进一步处理:
open('tstenc.txt','wb')为f:f.write(b'\n'。join([bytes(x)for x in encoded])
如果从python导入,则提供base128类来执行此操作。
base128的实例可用于转换为base128编码。
encoding:python包位数组用于每隔8位插入0位数据。BitArray负责移位位,为
新位腾出空间。这是分块做的。
对于大小
不等于7的倍数的块,mod 8位的长度可以大于零。因此,“chunkSize”必须是7的倍数。
即使“chunkSize”是7的倍数,最后一个块在编码后也可能需要填充以达到8的倍数。
填充量可以表示为原始数据的函数
长度mod``chunkSize`(``mod chunk``)。`` modchunk``作为
附加字节添加到编码末尾。要使此字节也以128为基数,我们需要“chunksize”`<;=128。
使用bytes``chars``生成的块将是整数列表
,并且可能仍需要键入字节以进行进一步处理:
open('tstenc.txt','wb')为f:f.write(b'\n'。join([bytes(x)for x in encoded])