从上一篇关于Stackoverflow的回答中我找到了javascript的bzip2 lib:https://github.com/antimatter15/bzip2.js
它完全符合我的需要,除了我需要输出为Uint8Array而不是字符串。
我在bzip2 lib中使用这个函数:
input
我找到了一种将字符串输出转换为Uint8Array的方法:
bzip2.simple = function(bits){
var size = bzip2.header(bits);
var all = '', chunk = '';
do{
all += chunk;
chunk = bzip2.decompress(bits, size);
}while(chunk != -1);
return all;
}
但出于速度原因,我希望有一种很好的方法可以重新编写原始的bzip2函数,因此它可以直接输出为Uint8Array。
我遇到的一个主要问题是我不知道如何动态增加数组。