之前研究过zip文件的格式,对解析和构造过程有了一定了解,最近终于抽时间封装成一个库,主页如下: https://github.com/kyriosli/node-zip
支持特性:
- 创建空白zip格式文件,或打开已有zip文件
- 向zip文件中插入/删除子文件
- 流式访问压缩/未压缩内容
因采用了Node.js
的Buffer
和zlib
库,所以比npm上的zip包效率要高;同时支持异步、流的方式访问文件中的内容,以适应不同需求;如果浏览器支持deflate
(除了低版本Android),server端甚至无需解压步骤,提高效率