官方zip.compress示例代码:
let arrayBufferOut = new ArrayBuffer(100);
let zip = zlib.createZipSync();
zip.compress(arrayBufferOut, arrayBufferOut, 20).then((data) => {
console.info('compress success:');
}).catch((errData: BusinessError) => {
console.error(`errData is errCode:${errData.code} message:${errData.message}`);
})
其中let arrayBufferOut = new ArrayBuffer(100);100是压缩后的容器大小,在压缩buffer前,如何知道压缩后的buffer的大小?
是设置缓冲区大小,值由自己设置。压缩完成,计算返回压缩大小的上限:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-zlib-V5\#compress12
压缩前,无法预测大小。