抖音开放平台Logo
开发者文档
控制台

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
"FileSystemManager.unzip:ok"
1.15.0

回调失败

object 类型,属性如下:

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

错误码

errorCodeerrMsgerrorType说明最低支持版本
999999invalid paramD
参数错误
1.15.0
999991error stackF
小游戏框架内部错误,有需要请创建工单咨询
1.15.0
114101permission denied, $apiName $dirPathD
1.15.0
114102no such file or directory, $apiName $dirPathD
1.15.0
114104user dir saved file size limit exceededD
1.15.0
114103operation not permitted, $apiName $filePathD
1.15.0
999999params $paramName is requiredD
1.15.0
999999params $paramName type is not $paramType typeD
1.15.0
999999$paramName is invalidD
1.15.0
999991operation failedF
小游戏框架内部错误,有需要请创建工单咨询
1.15.0
999993internal errorF
小游戏框架内部错误,有需要请创建工单咨询
1.15.0

代码示例

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); }, }); }