FileSystemManager.unzip
收藏我的收藏
基础库 1.15.0 开始支持本方法,这是一个异步方法。
解压文件。
| 前提条件 | 无 |
| 业务背景 | 无 |
| 使用限制 | 由于开发者只有在 用户目录(ttfile://user) 才有写的权限, 因此 targetPath 必须以 ttfile://user 开头 |
| 注意事项 | 无 |
| 相关教程 | 无 |
语法
FileSystemManager.unzip(options)
参数说明
options 为 object 类型,属性如下:
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
|---|---|---|---|---|---|
| zipFilePath | string | 是 | 源文件路径,只可以是 zip 压缩文件 | 1.15.0 | |
| targetPath | string | 是 | 目标目录路径, 必须以 ttfile://user 开头 | 1.15.0 | |
| success | function | 否 | 接口调用成功的回调函数 | 1.15.0 | |
| fail | function | 否 | 接口调用失败的回调函数 | 1.15.0 | |
| complete | function | 否 | 接口调用结束的回调函数(调用成功、失 败都会执行) | 1.15.0 |
回调成功
object 类型,属性如下:
| 属性名 | 类型 | 说明 | 最低支持版本 |
|---|---|---|---|
| errMsg | string | "FileSystemManager.unzip:ok" | 1.15.0 |
回调失败
object 类型,属性如下:
| 属性名 | 类型 | 说明 | 最低支持版本 |
|---|---|---|---|
| errMsg | string | "FileSystemManager.unzip:fail" + 详细错误信息 | 1.15.0 |
错误码
| errNo | errMsg | 说明 | 最低支持版本 |
|---|---|---|---|
| 20001 | invalid param | 参数错误 | 1.15.0 |
| 10401 | error stack | 小游戏框架内部错误,有需要请创建工单咨询 | 1.15.0 |
| 21101 | permission denied, $apiName $dirPath | 1.15.0 | |
| 21103 | no such file or directory, $apiName $dirPath | 1.15.0 | |
| 21104 | user dir saved file size limit exceeded | 1.15.0 | |
| 21102 | operation not permitted, $apiName $filePath | 1.15.0 | |
| 20000 | internal error | 小游戏框架内部错误,有需要请创建工单咨询 | 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); }, }); }
