开发
API

FileSystemManager.saveFileSync

基础库 1.15.0 开始支持本方法,低版本需做兼容处理, 该方法为同步方法。

保存临时文件到用户目录, 用户目录以 ttfile://user 开头

语法

FileSystemManager.saveFileSync(tempFilePath[, filePath])

参数说明

tempFilePath

必填, string 类型, 要保存的临时文件地址, 临时文件地址必须以 ttfile://temp 开头

filePath

选填, string 类型, 要保存的目标地址,如果没有填写将自动生成一个。

返回值

保存后的文件地址, string 类型

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

const fileSystemManager = tt.getFileSystemManager();

tt.chooseImage({
  success(res) {
    // 获取图片, chooseImage 获取的文件在临时文件目录内
    const tempFilePaths = res.tempFilePaths;
    if (tempFilePaths[0]) {
      // 保存到用户目录
      const savedFilePath = fileSystemManager.saveFileSync(tempFilePaths[0]);
      console.log(`文件已经从 ${tempFilePaths[0]} 移动到 ${savedFilePath}`);
    }
  },
});

Bug & Tip

  • Tip:该 API 会把临时文件 移动 到用户, 所以在调用成功后原文件路径将访问失败。
  • Tip:每一个小程序的用户文件存储上限为 50M, 相互隔离。
  • Tip:卸载宿主(例如头条, 抖音), 或者使用系统的清理功能将清除用户目录内的文件。
  • Tip:通过 tt.downloadFile 下载的文件会保存在以 ttfile://temp 开头的临时目录, 临时目录的文件会不定期清理, 如果希望下载的文件永久保留, 则可以通过 saveFile 将文件保存到以 ttfile://user 开头的用户目录下。
点击纠错
评价此篇文档