zip.ZipFile
open返回的对象,用于在压缩包中增删文件、获取文件头信息、解压等。
目录
方法
- addFile
- addFiles
- addFolder
- extractAll
- extractFile
- getFileHeader
- getFileHeaders
- getPath
- isEncrypted
- isValidZipFile
- removeFile
- setPassword
方法
addFile
- addFile(
file,options?):Promise<void>
在压缩包中添加指定文件。
示例
js
const zip = require('zip');
async function main() {
const zipFile = await zip.open('test.zip');
await zipFile.addFile('test.txt');
}
main();参数
| 名称 | 类型 | 描述 |
|---|---|---|
file | string | 本地文件路径 |
options? | ZipOptions | 压缩选项 |
返回值
Promise<void>
addFiles
- addFiles(
fileList,options?):Promise<void>
在压缩包中添加多个文件。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
fileList | string[] | 要添加的本地文件路径的数组 |
options? | ZipOptions | 压缩选项,可选 |
返回值
Promise<void>
addFolder
- addFolder(
folder,options?):Promise<void>
在压缩包中添加指定文件夹。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
folder | string | 文件夹路径 |
options? | ZipOptions | 压缩选项 |
返回值
Promise<void>
extractAll
- extractAll(
dest,options?):Promise<void>
解压所有文件到目标路径dest。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
dest | string | 解压路径 |
options? | UnzipOptions | 解压选项 |
返回值
Promise<void>
extractFile
- extractFile(
file,dest,options?,newFileName?):Promise<void>
从压缩包文件中提取特定文件到目标路径。如果目标路径无效,则此方法将引发异常。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
file | string | 要解压的文件 |
dest | string | 解压文件的目标路径 |
options? | UnzipOptions | 解压选项 |
newFileName? | string | 解压后文件的新名字,可选 |
返回值
Promise<void>
getFileHeader
- getFileHeader(
file):any
获取压缩包内指定文件的文件头信息。文件头信息包括校验值,是否加密,注释等。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
file | string | 压缩包内指定文件路径 |
返回值
any
getFileHeaders
- getFileHeaders():
any[]
获取压缩包内所有文件的文件头信息。文件头信息包括校验值,是否加密,注释等。
返回值
any[]
FileHeader的数组
getPath
- getPath():
string
获取当前压缩包的路径。
返回值
string
isEncrypted
- isEncrypted():
boolean
获取当前压缩包是否是加密压缩包。
返回值
boolean
是否压缩包加密
isValidZipFile
- isValidZipFile():
boolean
获取当前压缩包是否是一个有效的压缩包。 如果选择的路径不是一个压缩包或该文件不存在,均返回false。
返回值
boolean
是否是有效压缩包
removeFile
- removeFile(
file):Promise<void>
删除 zip 文件内的指定文件。此方法首先找到文件头,然后删除文件;如果文件不存在,则此方法引发异常。
如果 zip 文件是分割后的 zip 文件,则此方法会抛出异常,zip 规范不允许更新拆分的 zip 档案。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
file | string | 要删除的文件 |
返回值
Promise<void>
setPassword
- setPassword(
password):void
如果文件是一个加密的压缩包,必须用此函数设置正确的解压密码,才能解压出加密的文件。 未设置密码尝试解压加密的压缩包将抛出异常,选择的压缩包文件不存在使用本函数将抛出ZipException。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
password | string | 密码 |
返回值
void
