按照zlib文档介绍,zipOpen64打开压缩文件进行追加时,第二个参数应为:APPEND_STATUS_ADDINZIP 不存在打开失败,存在就追加(原本压缩包中的内容不清空)
APPEND_STATUS_ADDINZIP = 2
所以,需要对库进行一下修改,打开aardio\lib\zlib\zip.aardio,将第15行
var zipFile = zipOpen64(..string.fromto( ..io.fullpath(path) ) ,append?1:0);
改为如下:
var zipFile = zipOpen64(..string.fromto( ..io.fullpath(path) ) ,append?2:0);
调用的时候可以这样:
var zip = zlib.zip("C:\Users\Admin\Desktop\template.zip","C:\Users\Admin\Desktop\",true)
zip.compress( "C:\Users\Admin\Desktop\picture.png")
或者将第15行改为如下:
var zipFile = zipOpen64(..string.fromto( ..io.fullpath(path) ) ,append);
调用的时候可以这样:
var zip = zlib.zip("C:\Users\Admin\Desktop\template.zip","C:\Users\Admin\Desktop\",2)
zip.compress( "C:\Users\Admin\Desktop\picture.png")