FileSystemManager.unzip
收藏
我的收藏

基础库 1.15.0 开始支持本方法,这是一个异步方法。

解压文件。

前提条件
业务背景
使用限制
注意事项
由于开发者只有在 用户目录(ttfile://user) 才有写的权限, 因此 targetPath 必须以 ttfile://user 开头。
支持沙盒
相关教程

语法

FileSystemManager.unzip(options)

参数说明

options 为 object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
zipFilePathstring
源文件路径,只可以是 zip 压缩文件
1.15.0
targetPathstring
目标目录路径, 必须以 `ttfile://user` 开头
1.15.0
successfunction
接口调用成功的回调函数
1.15.0
failfunction
接口调用失败的回调函数
1.15.0
completefunction
接口调用结束的回调函数(调用成功、失败都会执行)
1.15.0

回调成功

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring
"unzip:ok"
1.15.0

回调失败

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring
"unzip:fail " + 详细错误信息
1.15.0

错误码

errorCodeerrMsgerrorType说明最低支持版本
107901permission denied, %s %sD
zipFilePath或者targetPath的路径没有权限

请查看参数是否正确

1.15.0
107902operation not permitted, %s %sD
zipFilePath对应的地址不是文件

请查看参数是否正确

1.15.0
107903no such file or directory, %s %s -> %sD
源文件不存在

请查看参数是否正确

1.15.0
107991operation failF
小程序框架内部错误,有需要请创建工单咨询
1.15.0
107999params zipFilePath is requiredD
zipFilePath是必传值

请查看参数是否正确

1.15.0
107999params targetPath is requiredD
targetPath是必传值

请查看参数是否正确

1.15.0
161799params.zipFilePath should be string, but got %sD
参数类型不对

请查看参数是否正确

1.15.0

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

const fileSystemManager = tt.getFileSystemManager() // 下载一个 zip 文件 tt.downloadFile({ url: "https://sf1-cdn-tos.douyinstatic.com/obj/microapp/frontend/docs/images/test-4423286930445687.zip", success(res) { console.log("下载 zip 成功", res.tempFilePath) // 解压 zip 文件 unzip(res.tempFilePath) }, fail(res) { console.log("下载 zip 失败", res.errMsg) }, }) function unzip(zipFilePath) { const targetPath = `ttfile://user/abc` fileSystemManager.unzip({ zipFilePath, targetPath, success(_res) { console.log("解压成功") const concent = fs.readdirSync(targetPath) // 输出 zip 内文件内容 console.log("压缩包内文件:", concent) }, fail(res) { console.log("解压失败", res.errMsg) }, }) }